mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-14 17:06:16 +00:00
5657 prevent displaying of cancelled results
This commit is contained in:
parent
824e56be72
commit
2757d20083
@ -19,6 +19,7 @@
|
||||
package org.sleuthkit.autopsy.filequery;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.ArrayList;
|
||||
import java.util.logging.Level;
|
||||
import javax.swing.SwingWorker;
|
||||
import org.sleuthkit.autopsy.casemodule.Case;
|
||||
@ -40,6 +41,7 @@ final class PageWorker extends SwingWorker<Void, Void> {
|
||||
private final int pageSize;
|
||||
private final FileSearchData.FileType resultType;
|
||||
private final EamDb centralRepo;
|
||||
private final List<ResultFile> results = new ArrayList<>();
|
||||
|
||||
/**
|
||||
* Construct a new PageWorker.
|
||||
@ -75,16 +77,24 @@ final class PageWorker extends SwingWorker<Void, Void> {
|
||||
|
||||
try {
|
||||
// Run the search
|
||||
List<ResultFile> results = FileSearch.getFilesInGroup(searchfilters,
|
||||
results.addAll(FileSearch.getFilesInGroup(searchfilters,
|
||||
groupingAttribute,
|
||||
groupSort,
|
||||
fileSortMethod, groupName, startingEntry, pageSize,
|
||||
Case.getCurrentCase().getSleuthkitCase(), centralRepo);
|
||||
int currentPage = startingEntry / pageSize; //integer division should round down to get page number correctly
|
||||
DiscoveryEvents.getDiscoveryEventBus().post(new DiscoveryEvents.PageRetrievedEvent(resultType, currentPage, results));
|
||||
Case.getCurrentCase().getSleuthkitCase(), centralRepo));
|
||||
} catch (FileSearchException ex) {
|
||||
logger.log(Level.SEVERE, "Error running file search test", ex);
|
||||
cancel(true);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void done() {
|
||||
if (!isCancelled()) {
|
||||
int currentPage = startingEntry / pageSize; //integer division should round down to get page number correctly
|
||||
DiscoveryEvents.getDiscoveryEventBus().post(new DiscoveryEvents.PageRetrievedEvent(resultType, currentPage, results));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -37,7 +37,7 @@ final class SearchWorker extends SwingWorker<Void, Void> {
|
||||
private final FileSorter.SortingMethod fileSort;
|
||||
private final FileGroup.GroupSortingAlgorithm groupSortAlgorithm;
|
||||
private final EamDb centralRepoDb;
|
||||
private boolean searchCompleted = false;
|
||||
private final LinkedHashMap<String, Integer> results = new LinkedHashMap<>();
|
||||
|
||||
/**
|
||||
* Create a SwingWorker which performs a search
|
||||
@ -60,23 +60,25 @@ final class SearchWorker extends SwingWorker<Void, Void> {
|
||||
protected Void doInBackground() throws Exception {
|
||||
try {
|
||||
// Run the search
|
||||
LinkedHashMap<String, Integer> results = FileSearch.getGroupSizes(filters,
|
||||
results.putAll(FileSearch.getGroupSizes(filters,
|
||||
groupingAttr,
|
||||
groupSortAlgorithm,
|
||||
fileSort,
|
||||
Case.getCurrentCase().getSleuthkitCase(), centralRepoDb);
|
||||
DiscoveryEvents.getDiscoveryEventBus().post(new DiscoveryEvents.SearchCompleteEvent(results, filters, groupingAttr, groupSortAlgorithm, fileSort));
|
||||
searchCompleted = true;
|
||||
Case.getCurrentCase().getSleuthkitCase(), centralRepoDb));
|
||||
} catch (FileSearchException ex) {
|
||||
logger.log(Level.SEVERE, "Error running file search test", ex);
|
||||
cancel(true);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void done() {
|
||||
if (!searchCompleted) {
|
||||
if (isCancelled()) {
|
||||
DiscoveryEvents.getDiscoveryEventBus().post(new DiscoveryEvents.SearchCancelledEvent());
|
||||
}
|
||||
else {
|
||||
DiscoveryEvents.getDiscoveryEventBus().post(new DiscoveryEvents.SearchCompleteEvent(results, filters, groupingAttr, groupSortAlgorithm, fileSort));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user