Change approach to be driven by data source

This commit is contained in:
U-BASIS\dsmyda 2019-08-15 13:34:34 -04:00
parent 82b5002b2a
commit c8269001eb

View File

@ -45,6 +45,7 @@ import org.sleuthkit.datamodel.BlackboardArtifact;
import org.sleuthkit.datamodel.BlackboardArtifactTag; import org.sleuthkit.datamodel.BlackboardArtifactTag;
import org.sleuthkit.datamodel.BlackboardAttribute; import org.sleuthkit.datamodel.BlackboardAttribute;
import org.sleuthkit.datamodel.ContentTag; import org.sleuthkit.datamodel.ContentTag;
import org.sleuthkit.datamodel.DataSource;
import org.sleuthkit.datamodel.SleuthkitCase; import org.sleuthkit.datamodel.SleuthkitCase;
import org.sleuthkit.datamodel.TskCoreException; import org.sleuthkit.datamodel.TskCoreException;
import org.sleuthkit.datamodel.TskData; import org.sleuthkit.datamodel.TskData;
@ -210,30 +211,33 @@ public final class CaseUcoFormatExporter {
JsonGenerator jsonGenerator = createJsonGenerator(reportFile); JsonGenerator jsonGenerator = createJsonGenerator(reportFile);
initializeJsonOutputFile(jsonGenerator); initializeJsonOutputFile(jsonGenerator);
String caseTraceId = saveCaseInfo(currentCase, jsonGenerator); String caseTraceId = saveCaseInfo(currentCase, jsonGenerator);
for(TagName tn : tagTypes) { for(DataSource ds : currentCase.getDataSources()) {
for(ContentTag ct : tagsManager.getContentTagsByTagName(tn)) { String dataSourceTraceId = saveDataSourceInfo(ds.getId(), caseTraceId, currentCase, jsonGenerator);
//copy content tag for(TagName tn : tagTypes) {
} for(ContentTag ct : tagsManager.getContentTagsByTagName(tn, ds.getId())) {
// copy content tag.
for(BlackboardArtifactTag bat : tagsManager.getBlackboardArtifactTagsByTagName(tn)) { }
//copy content
//copy associated content for(BlackboardArtifactTag bat : tagsManager.getBlackboardArtifactTagsByTagName(tn, ds.getId())) {
} //copy content
} //copy associated content
if(!interestingItemSets.isEmpty()) {
for(BlackboardArtifact bArt : currentCase.getBlackboardArtifacts(INTERESTING_FILE_HIT)) {
BlackboardAttribute setAttr = bArt.getAttribute(SET_NAME);
if (interestingItemSets.contains(setAttr.getValueString())) {
} }
} }
if(!interestingItemSets.isEmpty()) {
for(BlackboardArtifact bArt : currentCase.getBlackboardArtifacts(INTERESTING_FILE_HIT, ds.getId())) {
BlackboardAttribute setAttr = bArt.getAttribute(SET_NAME);
if (interestingItemSets.contains(setAttr.getValueString())) {
for(BlackboardArtifact bArt : currentCase.getBlackboardArtifacts(INTERESTING_ARTIFACT_HIT)) { }
BlackboardAttribute setAttr = bArt.getAttribute(SET_NAME); }
if (interestingItemSets.contains(setAttr.getValueString())) {
for(BlackboardArtifact bArt : currentCase.getBlackboardArtifacts(INTERESTING_ARTIFACT_HIT, ds.getId())) {
BlackboardAttribute setAttr = bArt.getAttribute(SET_NAME);
if (interestingItemSets.contains(setAttr.getValueString())) {
}
} }
} }
} }