mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-06 21:00:22 +00:00
revert kws changes as out of scope
This commit is contained in:
parent
6a215b5c4d
commit
8ff0976070
@ -18,8 +18,6 @@
|
||||
*/
|
||||
package org.sleuthkit.autopsy.keywordsearch;
|
||||
|
||||
import com.google.common.annotations.Beta;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@ -28,21 +26,18 @@ import java.util.logging.Level;
|
||||
import org.openide.util.NbBundle;
|
||||
import org.sleuthkit.autopsy.coreutils.Logger;
|
||||
import org.sleuthkit.autopsy.coreutils.ModuleSettings;
|
||||
import org.sleuthkit.autopsy.coreutils.PlatformUtil;
|
||||
import org.sleuthkit.autopsy.coreutils.StringExtract;
|
||||
import org.sleuthkit.autopsy.coreutils.StringExtract.StringExtractUnicodeTable.SCRIPT;
|
||||
import org.sleuthkit.autopsy.keywordsearch.KeywordSearchIngestModule.StringsExtractOptions;
|
||||
import org.sleuthkit.autopsy.keywordsearch.KeywordSearchIngestModule.UpdateFrequency;
|
||||
|
||||
//This file contains constants and settings for KeywordSearch
|
||||
@Beta
|
||||
public class KeywordSearchSettings {
|
||||
class KeywordSearchSettings {
|
||||
|
||||
public static final String MODULE_NAME = NbBundle.getMessage(KeywordSearchSettings.class, "KeywordSearchSettings.moduleName.text");
|
||||
static final String PROPERTIES_OPTIONS = NbBundle.getMessage(KeywordSearchSettings.class, "KeywordSearchSettings.properties_options.text", MODULE_NAME);
|
||||
static final String PROPERTIES_NSRL = NbBundle.getMessage(KeywordSearchSettings.class, "KeywordSearchSettings.propertiesNSRL.text", MODULE_NAME);
|
||||
static final String PROPERTIES_SCRIPTS = NbBundle.getMessage(KeywordSearchSettings.class, "KeywordSearchSettings.propertiesScripts.text", MODULE_NAME);
|
||||
static final String BASE_PATH = Paths.get(PlatformUtil.getUserConfigDirectory(), MODULE_NAME).toString();
|
||||
static final String SHOW_SNIPPETS = "showSnippets"; //NON-NLS
|
||||
static final boolean DEFAULT_SHOW_SNIPPETS = true;
|
||||
static final String OCR_ENABLED = "ocrEnabled"; //NON-NLS
|
||||
@ -55,31 +50,14 @@ public class KeywordSearchSettings {
|
||||
private static List<StringExtract.StringExtractUnicodeTable.SCRIPT> stringExtractScripts = new ArrayList<>();
|
||||
private static Map<String, String> stringExtractOptions = new HashMap<>();
|
||||
|
||||
|
||||
/**
|
||||
* @return The full path to the keyword search settings folder.
|
||||
*/
|
||||
public static String getBaseSettingsPath() {
|
||||
return BASE_PATH;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the module settings resource name to be used for keyword search settings.
|
||||
* @param name The original name.
|
||||
* @return The module settings resource.
|
||||
*/
|
||||
static String getModuleSettingsResource(String name) {
|
||||
return Paths.get(MODULE_NAME, name).toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the update Frequency from KeywordSearch_Options.properties
|
||||
*
|
||||
* @return KeywordSearchIngestModule's update frequency
|
||||
*/
|
||||
static UpdateFrequency getUpdateFrequency() {
|
||||
if (ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), "UpdateFrequency") != null) { //NON-NLS
|
||||
return UpdateFrequency.valueOf(ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), "UpdateFrequency")); //NON-NLS
|
||||
if (ModuleSettings.getConfigSetting(PROPERTIES_OPTIONS, "UpdateFrequency") != null) { //NON-NLS
|
||||
return UpdateFrequency.valueOf(ModuleSettings.getConfigSetting(PROPERTIES_OPTIONS, "UpdateFrequency")); //NON-NLS
|
||||
}
|
||||
//if it failed, return the default/last known value
|
||||
logger.log(Level.WARNING, "Could not read property for UpdateFrequency, returning backup value."); //NON-NLS
|
||||
@ -92,7 +70,7 @@ public class KeywordSearchSettings {
|
||||
* @param freq Sets KeywordSearchIngestModule to this value.
|
||||
*/
|
||||
static void setUpdateFrequency(UpdateFrequency freq) {
|
||||
ModuleSettings.setConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), "UpdateFrequency", freq.name()); //NON-NLS
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_OPTIONS, "UpdateFrequency", freq.name()); //NON-NLS
|
||||
UpdateFreq = freq;
|
||||
}
|
||||
|
||||
@ -103,7 +81,7 @@ public class KeywordSearchSettings {
|
||||
* @param skip
|
||||
*/
|
||||
static void setSkipKnown(boolean skip) {
|
||||
ModuleSettings.setConfigSetting(getModuleSettingsResource(PROPERTIES_NSRL), "SkipKnown", Boolean.toString(skip)); //NON-NLS
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_NSRL, "SkipKnown", Boolean.toString(skip)); //NON-NLS
|
||||
skipKnown = skip;
|
||||
}
|
||||
|
||||
@ -114,8 +92,8 @@ public class KeywordSearchSettings {
|
||||
* @return skip setting
|
||||
*/
|
||||
static boolean getSkipKnown() {
|
||||
if (ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_NSRL), "SkipKnown") != null) { //NON-NLS
|
||||
return Boolean.parseBoolean(ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_NSRL), "SkipKnown")); //NON-NLS
|
||||
if (ModuleSettings.getConfigSetting(PROPERTIES_NSRL, "SkipKnown") != null) { //NON-NLS
|
||||
return Boolean.parseBoolean(ModuleSettings.getConfigSetting(PROPERTIES_NSRL, "SkipKnown")); //NON-NLS
|
||||
}
|
||||
//if it fails, return the default/last known value
|
||||
logger.log(Level.WARNING, "Could not read property for SkipKnown, returning backup value."); //NON-NLS
|
||||
@ -132,14 +110,14 @@ public class KeywordSearchSettings {
|
||||
stringExtractScripts.addAll(scripts);
|
||||
|
||||
//Disabling scripts that weren't selected
|
||||
for (String s : ModuleSettings.getConfigSettings(getModuleSettingsResource(PROPERTIES_SCRIPTS)).keySet()) {
|
||||
for (String s : ModuleSettings.getConfigSettings(PROPERTIES_SCRIPTS).keySet()) {
|
||||
if (!scripts.contains(StringExtract.StringExtractUnicodeTable.SCRIPT.valueOf(s))) {
|
||||
ModuleSettings.setConfigSetting(getModuleSettingsResource(PROPERTIES_SCRIPTS), s, "false"); //NON-NLS
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_SCRIPTS, s, "false"); //NON-NLS
|
||||
}
|
||||
}
|
||||
//Writing and enabling selected scripts
|
||||
for (StringExtract.StringExtractUnicodeTable.SCRIPT s : stringExtractScripts) {
|
||||
ModuleSettings.setConfigSetting(getModuleSettingsResource(PROPERTIES_SCRIPTS), s.name(), "true"); //NON-NLS
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_SCRIPTS, s.name(), "true"); //NON-NLS
|
||||
}
|
||||
|
||||
}
|
||||
@ -152,7 +130,7 @@ public class KeywordSearchSettings {
|
||||
*/
|
||||
static void setStringExtractOption(String key, String val) {
|
||||
stringExtractOptions.put(key, val);
|
||||
ModuleSettings.setConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), key, val);
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_OPTIONS, key, val);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -164,8 +142,8 @@ public class KeywordSearchSettings {
|
||||
*/
|
||||
@Deprecated
|
||||
static boolean getOcrOption() {
|
||||
if (ModuleSettings.settingExists(getModuleSettingsResource(PROPERTIES_OPTIONS), OCR_ENABLED)) {
|
||||
return ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), OCR_ENABLED).equals("true"); //NON-NLS
|
||||
if (ModuleSettings.settingExists(PROPERTIES_OPTIONS, OCR_ENABLED)) {
|
||||
return ModuleSettings.getConfigSetting(PROPERTIES_OPTIONS, OCR_ENABLED).equals("true"); //NON-NLS
|
||||
} else {
|
||||
return OCR_ENABLED_DEFAULT;
|
||||
}
|
||||
@ -182,20 +160,20 @@ public class KeywordSearchSettings {
|
||||
*/
|
||||
@Deprecated
|
||||
static boolean getLimitedOcrOption() {
|
||||
if (ModuleSettings.settingExists(getModuleSettingsResource(PROPERTIES_OPTIONS), LIMITED_OCR_ENABLED)) {
|
||||
return ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), LIMITED_OCR_ENABLED).equals("true"); //NON-NLS
|
||||
if (ModuleSettings.settingExists(PROPERTIES_OPTIONS, LIMITED_OCR_ENABLED)) {
|
||||
return ModuleSettings.getConfigSetting(PROPERTIES_OPTIONS, LIMITED_OCR_ENABLED).equals("true"); //NON-NLS
|
||||
} else {
|
||||
return LIMITED_OCR_ENABLED_DEFAULT;
|
||||
}
|
||||
}
|
||||
|
||||
static void setShowSnippets(boolean showSnippets) {
|
||||
ModuleSettings.setConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), SHOW_SNIPPETS, (showSnippets ? "true" : "false")); //NON-NLS
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_OPTIONS, SHOW_SNIPPETS, (showSnippets ? "true" : "false")); //NON-NLS
|
||||
}
|
||||
|
||||
static boolean getShowSnippets() {
|
||||
if (ModuleSettings.settingExists(getModuleSettingsResource(PROPERTIES_OPTIONS), SHOW_SNIPPETS)) {
|
||||
return ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), SHOW_SNIPPETS).equals("true"); //NON-NLS
|
||||
if (ModuleSettings.settingExists(PROPERTIES_OPTIONS, SHOW_SNIPPETS)) {
|
||||
return ModuleSettings.getConfigSetting(PROPERTIES_OPTIONS, SHOW_SNIPPETS).equals("true"); //NON-NLS
|
||||
} else {
|
||||
return DEFAULT_SHOW_SNIPPETS;
|
||||
}
|
||||
@ -207,9 +185,9 @@ public class KeywordSearchSettings {
|
||||
* @return the list of currently used script
|
||||
*/
|
||||
static List<SCRIPT> getStringExtractScripts() {
|
||||
if (ModuleSettings.getConfigSettings(getModuleSettingsResource(PROPERTIES_SCRIPTS)) != null && !ModuleSettings.getConfigSettings(getModuleSettingsResource(PROPERTIES_SCRIPTS)).isEmpty()) {
|
||||
if (ModuleSettings.getConfigSettings(PROPERTIES_SCRIPTS) != null && !ModuleSettings.getConfigSettings(PROPERTIES_SCRIPTS).isEmpty()) {
|
||||
List<SCRIPT> scripts = new ArrayList<>();
|
||||
for (Map.Entry<String, String> kvp : ModuleSettings.getConfigSettings(getModuleSettingsResource(PROPERTIES_SCRIPTS)).entrySet()) {
|
||||
for (Map.Entry<String, String> kvp : ModuleSettings.getConfigSettings(PROPERTIES_SCRIPTS).entrySet()) {
|
||||
if (kvp.getValue().equals("true")) { //NON-NLS
|
||||
scripts.add(SCRIPT.valueOf(kvp.getKey()));
|
||||
}
|
||||
@ -229,8 +207,8 @@ public class KeywordSearchSettings {
|
||||
* @return option string value, or empty string if the option is not set
|
||||
*/
|
||||
static String getStringExtractOption(String key) {
|
||||
if (ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), key) != null) {
|
||||
return ModuleSettings.getConfigSetting(getModuleSettingsResource(PROPERTIES_OPTIONS), key);
|
||||
if (ModuleSettings.getConfigSetting(PROPERTIES_OPTIONS, key) != null) {
|
||||
return ModuleSettings.getConfigSetting(PROPERTIES_OPTIONS, key);
|
||||
} else {
|
||||
logger.log(Level.WARNING, "Could not read property for key {0}, returning backup value.", key); //NON-NLS
|
||||
return stringExtractOptions.get(key);
|
||||
@ -243,7 +221,7 @@ public class KeywordSearchSettings {
|
||||
* @return Map<String,String> of extract options.
|
||||
*/
|
||||
static Map<String, String> getStringExtractOptions() {
|
||||
Map<String, String> settings = ModuleSettings.getConfigSettings(getModuleSettingsResource(PROPERTIES_OPTIONS));
|
||||
Map<String, String> settings = ModuleSettings.getConfigSettings(PROPERTIES_OPTIONS);
|
||||
if (settings == null) {
|
||||
Map<String, String> settingsv2 = new HashMap<>();
|
||||
logger.log(Level.WARNING, "Could not read properties for {0}.properties, returning backup values", PROPERTIES_OPTIONS); //NON-NLS
|
||||
@ -261,29 +239,29 @@ public class KeywordSearchSettings {
|
||||
static void setDefaults() {
|
||||
logger.log(Level.INFO, "Detecting default settings."); //NON-NLS
|
||||
//setting default NSRL
|
||||
if (!ModuleSettings.settingExists(getModuleSettingsResource(KeywordSearchSettings.PROPERTIES_NSRL), "SkipKnown")) { //NON-NLS
|
||||
if (!ModuleSettings.settingExists(KeywordSearchSettings.PROPERTIES_NSRL, "SkipKnown")) { //NON-NLS
|
||||
logger.log(Level.INFO, "No configuration for NSRL found, generating default..."); //NON-NLS
|
||||
KeywordSearchSettings.setSkipKnown(true);
|
||||
}
|
||||
//setting default Update Frequency
|
||||
if (!ModuleSettings.settingExists(getModuleSettingsResource(KeywordSearchSettings.PROPERTIES_OPTIONS), "UpdateFrequency")) { //NON-NLS
|
||||
if (!ModuleSettings.settingExists(KeywordSearchSettings.PROPERTIES_OPTIONS, "UpdateFrequency")) { //NON-NLS
|
||||
logger.log(Level.INFO, "No configuration for Update Frequency found, generating default..."); //NON-NLS
|
||||
KeywordSearchSettings.setUpdateFrequency(UpdateFrequency.DEFAULT);
|
||||
}
|
||||
//setting default Extract UTF8
|
||||
if (!ModuleSettings.settingExists(getModuleSettingsResource(KeywordSearchSettings.PROPERTIES_OPTIONS), StringsExtractOptions.EXTRACT_UTF8.toString())) {
|
||||
if (!ModuleSettings.settingExists(KeywordSearchSettings.PROPERTIES_OPTIONS, StringsExtractOptions.EXTRACT_UTF8.toString())) {
|
||||
logger.log(Level.INFO, "No configuration for UTF8 found, generating default..."); //NON-NLS
|
||||
KeywordSearchSettings.setStringExtractOption(StringsExtractOptions.EXTRACT_UTF8.toString(), Boolean.TRUE.toString());
|
||||
}
|
||||
//setting default Extract UTF16
|
||||
if (!ModuleSettings.settingExists(getModuleSettingsResource(KeywordSearchSettings.PROPERTIES_OPTIONS), StringsExtractOptions.EXTRACT_UTF16.toString())) {
|
||||
if (!ModuleSettings.settingExists(KeywordSearchSettings.PROPERTIES_OPTIONS, StringsExtractOptions.EXTRACT_UTF16.toString())) {
|
||||
logger.log(Level.INFO, "No configuration for UTF16 found, generating defaults..."); //NON-NLS
|
||||
KeywordSearchSettings.setStringExtractOption(StringsExtractOptions.EXTRACT_UTF16.toString(), Boolean.TRUE.toString());
|
||||
}
|
||||
//setting default Latin-1 Script
|
||||
if (!ModuleSettings.settingExists(getModuleSettingsResource(KeywordSearchSettings.PROPERTIES_SCRIPTS), SCRIPT.LATIN_1.name())) {
|
||||
if (!ModuleSettings.settingExists(KeywordSearchSettings.PROPERTIES_SCRIPTS, SCRIPT.LATIN_1.name())) {
|
||||
logger.log(Level.INFO, "No configuration for Scripts found, generating defaults..."); //NON-NLS
|
||||
ModuleSettings.setConfigSetting(getModuleSettingsResource(KeywordSearchSettings.PROPERTIES_SCRIPTS), SCRIPT.LATIN_1.name(), Boolean.toString(true));
|
||||
ModuleSettings.setConfigSetting(KeywordSearchSettings.PROPERTIES_SCRIPTS, SCRIPT.LATIN_1.name(), Boolean.toString(true));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -329,28 +329,28 @@ public class Server {
|
||||
|
||||
private void initSettings() {
|
||||
|
||||
if (ModuleSettings.settingExists(KeywordSearchSettings.getModuleSettingsResource(PROPERTIES_FILE), PROPERTIES_CURRENT_SERVER_PORT)) {
|
||||
if (ModuleSettings.settingExists(PROPERTIES_FILE, PROPERTIES_CURRENT_SERVER_PORT)) {
|
||||
try {
|
||||
localSolrServerPort = Integer.decode(ModuleSettings.getConfigSetting(KeywordSearchSettings.getModuleSettingsResource(PROPERTIES_FILE), PROPERTIES_CURRENT_SERVER_PORT));
|
||||
localSolrServerPort = Integer.decode(ModuleSettings.getConfigSetting(PROPERTIES_FILE, PROPERTIES_CURRENT_SERVER_PORT));
|
||||
} catch (NumberFormatException nfe) {
|
||||
logger.log(Level.WARNING, "Could not decode indexing server port, value was not a valid port number, using the default. ", nfe); //NON-NLS
|
||||
localSolrServerPort = DEFAULT_SOLR_SERVER_PORT;
|
||||
}
|
||||
} else {
|
||||
localSolrServerPort = DEFAULT_SOLR_SERVER_PORT;
|
||||
ModuleSettings.setConfigSetting(KeywordSearchSettings.getModuleSettingsResource(PROPERTIES_FILE), PROPERTIES_CURRENT_SERVER_PORT, String.valueOf(localSolrServerPort));
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_FILE, PROPERTIES_CURRENT_SERVER_PORT, String.valueOf(localSolrServerPort));
|
||||
}
|
||||
|
||||
if (ModuleSettings.settingExists(KeywordSearchSettings.getModuleSettingsResource(PROPERTIES_FILE), PROPERTIES_CURRENT_STOP_PORT)) {
|
||||
if (ModuleSettings.settingExists(PROPERTIES_FILE, PROPERTIES_CURRENT_STOP_PORT)) {
|
||||
try {
|
||||
localSolrStopPort = Integer.decode(ModuleSettings.getConfigSetting(KeywordSearchSettings.getModuleSettingsResource(PROPERTIES_FILE), PROPERTIES_CURRENT_STOP_PORT));
|
||||
localSolrStopPort = Integer.decode(ModuleSettings.getConfigSetting(PROPERTIES_FILE, PROPERTIES_CURRENT_STOP_PORT));
|
||||
} catch (NumberFormatException nfe) {
|
||||
logger.log(Level.WARNING, "Could not decode indexing server stop port, value was not a valid port number, using default", nfe); //NON-NLS
|
||||
localSolrStopPort = DEFAULT_SOLR_STOP_PORT;
|
||||
}
|
||||
} else {
|
||||
localSolrStopPort = DEFAULT_SOLR_STOP_PORT;
|
||||
ModuleSettings.setConfigSetting(KeywordSearchSettings.getModuleSettingsResource(PROPERTIES_FILE), PROPERTIES_CURRENT_STOP_PORT, String.valueOf(localSolrStopPort));
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_FILE, PROPERTIES_CURRENT_STOP_PORT, String.valueOf(localSolrStopPort));
|
||||
}
|
||||
}
|
||||
|
||||
@ -827,7 +827,7 @@ public class Server {
|
||||
*/
|
||||
void changeSolrServerPort(int port) {
|
||||
localSolrServerPort = port;
|
||||
ModuleSettings.setConfigSetting(KeywordSearchSettings.getModuleSettingsResource(PROPERTIES_FILE), PROPERTIES_CURRENT_SERVER_PORT, String.valueOf(port));
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_FILE, PROPERTIES_CURRENT_SERVER_PORT, String.valueOf(port));
|
||||
}
|
||||
|
||||
/**
|
||||
@ -837,7 +837,7 @@ public class Server {
|
||||
*/
|
||||
void changeSolrStopPort(int port) {
|
||||
localSolrStopPort = port;
|
||||
ModuleSettings.setConfigSetting(KeywordSearchSettings.getModuleSettingsResource(PROPERTIES_FILE), PROPERTIES_CURRENT_STOP_PORT, String.valueOf(port));
|
||||
ModuleSettings.setConfigSetting(PROPERTIES_FILE, PROPERTIES_CURRENT_STOP_PORT, String.valueOf(port));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -18,7 +18,7 @@
|
||||
*/
|
||||
package org.sleuthkit.autopsy.keywordsearch;
|
||||
|
||||
import java.nio.file.Paths;
|
||||
import java.io.File;
|
||||
import java.text.DateFormat;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
@ -30,6 +30,7 @@ import javax.xml.parsers.DocumentBuilder;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import javax.xml.parsers.ParserConfigurationException;
|
||||
import org.sleuthkit.autopsy.coreutils.Logger;
|
||||
import org.sleuthkit.autopsy.coreutils.PlatformUtil;
|
||||
import org.sleuthkit.autopsy.coreutils.XMLUtil;
|
||||
import org.sleuthkit.datamodel.BlackboardAttribute;
|
||||
import org.w3c.dom.Document;
|
||||
@ -44,7 +45,7 @@ final class XmlKeywordSearchList extends KeywordSearchList {
|
||||
|
||||
private static final Logger xmlListslogger = Logger.getLogger(XmlKeywordSearchList.class.getName());
|
||||
private static final String CUR_LISTS_FILE_NAME = "keywords.xml"; //NON-NLS
|
||||
private static final String CUR_LISTS_FILE = Paths.get(KeywordSearchSettings.getBaseSettingsPath(), CUR_LISTS_FILE_NAME).toString();
|
||||
private static final String CUR_LISTS_FILE = PlatformUtil.getUserConfigDirectory() + File.separator + CUR_LISTS_FILE_NAME;
|
||||
private static final String ROOT_EL = "keyword_lists"; //NON-NLS
|
||||
private static final String LIST_EL = "keyword_list"; //NON-NLS
|
||||
private static final String LIST_NAME_ATTR = "name"; //NON-NLS
|
||||
|
Loading…
x
Reference in New Issue
Block a user