Skip to content
Snippets Groups Projects
Commit b4778d2c authored by Greg DiCristofaro's avatar Greg DiCristofaro
Browse files

ingest installer

parent 962699c0
Branches
Tags
No related merge requests found
...@@ -24,9 +24,13 @@ ...@@ -24,9 +24,13 @@
import java.io.InputStream; import java.io.InputStream;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.Paths; import java.nio.file.Paths;
import java.util.Map;
import java.util.Properties; import java.util.Properties;
import java.util.stream.Collectors;
import org.apache.commons.io.FileUtils;
import org.openide.modules.ModuleInstall; import org.openide.modules.ModuleInstall;
import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.coreutils.ModuleSettings;
import org.sleuthkit.autopsy.coreutils.PlatformUtil; import org.sleuthkit.autopsy.coreutils.PlatformUtil;
/** /**
...@@ -71,23 +75,33 @@ private void upgradeSettings() { ...@@ -71,23 +75,33 @@ private void upgradeSettings() {
File settingsFolder = new File(IngestJobSettings.getBaseSettingsPath()); File settingsFolder = new File(IngestJobSettings.getBaseSettingsPath());
File legacySettingsFolder = new File(LEGACY_INGEST_SETTINGS_PATH); File legacySettingsFolder = new File(LEGACY_INGEST_SETTINGS_PATH);
if (legacySettingsFolder.exists() && !settingsFolder.exists()) { if (legacySettingsFolder.exists() && !settingsFolder.exists()) {
for (File moduleSettings : legacySettingsFolder.listFiles()) { for (File moduleSettingsFolder : legacySettingsFolder.listFiles()) {
if (moduleSettings.isDirectory()) { if (moduleSettingsFolder.isDirectory()) {
// get the settings name from the folder name (will be the same for any properties files). // get the settings name from the folder name (will be the same for any properties files).
String settingsName = moduleSettings.getName(); String settingsName = moduleSettingsFolder.getName();
Path configPropsPath = Paths.get(PlatformUtil.getUserConfigDirectory(), settingsName + PROPERTIES_EXT); try {
Path profilePropsPath = Paths.get(LEGACY_INGEST_PROFILES_PATH, settingsName + PROPERTIES_EXT); Path configPropsPath = Paths.get(PlatformUtil.getUserConfigDirectory(), settingsName + PROPERTIES_EXT);
boolean isProfile = profilePropsPath.toFile().exists(); Path profilePropsPath = Paths.get(LEGACY_INGEST_PROFILES_PATH, settingsName + PROPERTIES_EXT);
boolean isProfile = profilePropsPath.toFile().exists();
// load properties
Properties configProps = loadProps(configPropsPath.toFile()); // load properties
Properties configProps = loadProps(configPropsPath.toFile());
if (isProfile) {
configProps.putAll(loadProps(profilePropsPath.toFile())); if (isProfile) {
configProps.putAll(loadProps(profilePropsPath.toFile()));
}
Map<String, String> moduleSettingsToSave = configProps.entrySet().stream()
.filter(e -> e.getKey() != null)
.collect(Collectors.toMap(e -> e.getKey().toString(), e -> e.getValue() == null ? null : e.getValue().toString(), (v1, v2) -> v1));
ModuleSettings.setConfigSettings(IngestJobSettings.getModuleSettingsResource(settingsName), moduleSettingsToSave);
FileUtils.copyDirectory(moduleSettingsFolder, IngestJobSettings.getSavedModuleSettingsFolder(settingsName).toFile());
} catch (IOException ex) {
logger.log(Level.WARNING, "There was an error upgrading settings for: " + settingsName, ex);
} }
} }
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment