19 package org.sleuthkit.autopsy.keywordsearch;
21 import java.util.logging.Level;
22 import org.openide.modules.ModuleInstall;
23 import org.openide.util.NbBundle;
24 import org.openide.windows.WindowManager;
37 class Installer
extends ModuleInstall {
39 private static final Logger logger = Logger.getLogger(Installer.class.getName());
40 private static final long serialVersionUID = 1L;
43 public void restored() {
45 KeywordSearchSettings.setDefaults();
47 final Server server = KeywordSearch.getServer();
50 }
catch (SolrServerNoPortException ex) {
51 logger.log(Level.SEVERE,
"Failed to start Keyword Search server: ", ex);
52 if (ex.getPortNumber() == server.getCurrentSolrServerPort()) {
53 reportPortError(ex.getPortNumber());
55 reportStopPortError(ex.getPortNumber());
57 }
catch (KeywordSearchModuleException ex) {
58 logger.log(Level.SEVERE,
"Failed to start Keyword Search server: ", ex);
59 reportInitError(ex.getMessage());
64 public boolean closing() {
67 KeywordSearch.getServer().stop();
73 public void uninstalled() {
75 KeywordSearch.getServer().stop();
79 private void reportPortError(
final int curFailPort) {
80 WindowManager.getDefault().invokeWhenUIReady(
new Runnable() {
83 final String msg = NbBundle.getMessage(this.getClass(),
"Installer.reportPortError", curFailPort, Version.getName(), Server.PROPERTIES_CURRENT_SERVER_PORT, Server.PROPERTIES_FILE);
84 MessageNotifyUtil.Notify.error(NbBundle.getMessage(
this.getClass(),
"Installer.errorInitKsmMsg"), msg);
89 private void reportStopPortError(
final int curFailPort) {
90 WindowManager.getDefault().invokeWhenUIReady(
new Runnable() {
93 final String msg = NbBundle.getMessage(this.getClass(),
"Installer.reportStopPortError", curFailPort, Server.PROPERTIES_CURRENT_STOP_PORT, Server.PROPERTIES_FILE);
94 MessageNotifyUtil.Notify.error(NbBundle.getMessage(
this.getClass(),
"Installer.errorInitKsmMsg"), msg);
99 private void reportInitError(
final String msg) {
100 WindowManager.getDefault().invokeWhenUIReady(
new Runnable() {
103 MessageNotifyUtil.Notify.error(NbBundle.getMessage(
this.getClass(),
"Installer.errorInitKsmMsg"), msg);