Merge pull request #7544 from gdicristofaro/8295-instantDataArtifacts

8295 instant data artifacts
This commit is contained in:
eugene7646 2022-02-14 13:57:44 -05:00 committed by GitHub
commit cf6b91c056
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 41 additions and 13 deletions

View File

@ -41,6 +41,7 @@ import org.openide.util.NbBundle.Messages;
import org.sleuthkit.autopsy.casemodule.Case;
import org.sleuthkit.autopsy.casemodule.NoCurrentCaseException;
import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.ingest.IngestManager;
import org.sleuthkit.autopsy.ingest.ModuleDataEvent;
import static org.sleuthkit.autopsy.mainui.datamodel.AbstractDAO.CACHE_DURATION;
import static org.sleuthkit.autopsy.mainui.datamodel.AbstractDAO.CACHE_DURATION_UNITS;
@ -316,8 +317,14 @@ public class CommAccountsDAO extends AbstractDAO {
}
}
Stream<TreeEvent> treeEvents = this.accountCounts.enqueueAll(accountEvents).stream()
Stream<TreeEvent> treeEvents;
if (IngestManager.getInstance().isIngestRunning()) {
treeEvents = this.accountCounts.enqueueAll(accountEvents).stream()
.map(daoEvt -> new TreeEvent(createAccountTreeItem(daoEvt.getAccountType(), daoEvt.getDataSourceId(), TreeResultsDTO.TreeDisplayCount.INDETERMINATE), false));
} else {
treeEvents = accountEvents.stream()
.map(daoEvt -> new TreeEvent(createAccountTreeItem(daoEvt.getAccountType(), daoEvt.getDataSourceId(), TreeResultsDTO.TreeDisplayCount.INDETERMINATE), false));
}
return Stream.of(accountEvents.stream(), treeEvents)
.flatMap(s -> s)

View File

@ -45,6 +45,7 @@ import org.openide.util.NbBundle.Messages;
import org.sleuthkit.autopsy.casemodule.Case;
import org.sleuthkit.autopsy.casemodule.NoCurrentCaseException;
import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.ingest.IngestManager;
import org.sleuthkit.autopsy.ingest.ModuleDataEvent;
import org.sleuthkit.autopsy.mainui.datamodel.TreeResultsDTO.TreeDisplayCount;
import org.sleuthkit.autopsy.mainui.datamodel.TreeResultsDTO.TreeItemDTO;
@ -467,9 +468,13 @@ public class CreditCardDAO extends AbstractDAO {
/**
* Returns counts of artifacts found for bin prefixes.
* @param dataSourceId The data source id to filter on or null for no filtering.
*
* @param dataSourceId The data source id to filter on or null for no
* filtering.
* @param includeRejected Whether or not to include rejected accounts.
*
* @return The results to use in the tree.
*
* @throws ExecutionException
*/
public TreeResultsDTO<CreditCardBinSearchParams> getCreditCardBinCounts(Long dataSourceId, boolean includeRejected) throws ExecutionException {
@ -613,15 +618,24 @@ public class CreditCardDAO extends AbstractDAO {
}
}
List<TreeEvent> treeEvents = this.creditCardTreeCounts.enqueueAll(events).stream()
.flatMap(daoEvt -> {
List<TreeItemDTO<CreditCardSearchParams>> treeItems = createTreeItems(daoEvt, TreeDisplayCount.INDETERMINATE);
return treeItems.stream().map(item -> new TreeEvent(item, false));
})
.collect(Collectors.toList());
Stream<TreeEvent> treeEvents;
if (IngestManager.getInstance().isIngestRunning()) {
treeEvents = this.creditCardTreeCounts.enqueueAll(events).stream()
.flatMap(daoEvt -> {
List<TreeItemDTO<CreditCardSearchParams>> treeItems = createTreeItems(daoEvt, TreeDisplayCount.INDETERMINATE);
return treeItems.stream().map(item -> new TreeEvent(item, false));
});
return Stream.of(events, treeEvents)
.flatMap(s -> s.stream())
} else {
treeEvents = events.stream()
.flatMap(daoEvt -> {
List<TreeItemDTO<CreditCardSearchParams>> treeItems = createTreeItems(daoEvt, TreeDisplayCount.UNSPECIFIED);
return treeItems.stream().map(item -> new TreeEvent(item, true));
});
}
return Stream.of(events.stream(), treeEvents)
.flatMap(s -> s)
.collect(Collectors.toSet());
}

View File

@ -42,6 +42,7 @@ import java.util.stream.Stream;
import org.apache.commons.lang3.tuple.Pair;
import org.openide.util.NbBundle;
import org.sleuthkit.autopsy.casemodule.NoCurrentCaseException;
import org.sleuthkit.autopsy.ingest.IngestManager;
import org.sleuthkit.autopsy.ingest.ModuleDataEvent;
import static org.sleuthkit.autopsy.mainui.datamodel.AbstractDAO.CACHE_DURATION;
import static org.sleuthkit.autopsy.mainui.datamodel.AbstractDAO.CACHE_DURATION_UNITS;
@ -226,8 +227,14 @@ public class DataArtifactDAO extends BlackboardArtifactDAO {
}
}
Stream<TreeEvent> dataArtifactTreeEvents = this.treeCounts.enqueueAll(dataArtifactEvents).stream()
Stream<TreeEvent> dataArtifactTreeEvents;
if (IngestManager.getInstance().isIngestRunning()) {
dataArtifactTreeEvents = this.treeCounts.enqueueAll(dataArtifactEvents).stream()
.map(daoEvt -> new TreeEvent(createDataArtifactTreeItem(daoEvt.getArtifactType(), daoEvt.getDataSourceId(), TreeDisplayCount.INDETERMINATE), false));
} else {
dataArtifactTreeEvents = dataArtifactEvents.stream()
.map(daoEvt -> new TreeEvent(createDataArtifactTreeItem(daoEvt.getArtifactType(), daoEvt.getDataSourceId(), TreeDisplayCount.UNSPECIFIED), true));
}
return Stream.of(dataArtifactEvents.stream(), dataArtifactTreeEvents)
.flatMap(s -> s)