diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchIngestService.java b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchIngestService.java index f8b3c86a63..4f815b8c7e 100644 --- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchIngestService.java +++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchIngestService.java @@ -64,6 +64,7 @@ public final class KeywordSearchIngestService implements IngestServiceFsContent private volatile boolean commitIndex = false; //whether to commit index next time private volatile boolean runTimer = false; private List keywords; //keywords to search + private List keywordLists; // lists currently being searched //private final Object lock = new Object(); private Thread timer; private Indexer indexer; @@ -188,6 +189,7 @@ public final class KeywordSearchIngestService implements IngestServiceFsContent reportedHits = new HashMap>(); keywords = new ArrayList(); + keywordLists = new ArrayList(); updateKeywords(); @@ -277,17 +279,32 @@ public final class KeywordSearchIngestService implements IngestServiceFsContent } } + /** + * Retrieve the updated keyword search lists from the XML loader + */ private void updateKeywords() { KeywordSearchListsXML loader = KeywordSearchListsXML.getCurrent(); keywords.clear(); + keywordLists.clear(); for(KeywordSearchList list : loader.getListsL()){ if(list.getUseForIngest()) + keywordLists.add(list); keywords.addAll(list.getKeywords()); } logger.info(keywords.size()+""); } + + List getKeywordLists() { + List ret = new ArrayList(); + if(keywordLists == null) + return ret; + for(KeywordSearchList list : keywordLists) { + ret.add(list.getName()); + } + return ret; + } //CommitTimer wakes up every interval ms //and sets a flag for indexer to commit after indexing next file