mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-17 18:17:43 +00:00
added message notification to exception handing
This commit is contained in:
parent
3418e12ccc
commit
711e8d06e0
@ -33,8 +33,10 @@ import org.openide.DialogDisplayer;
|
|||||||
import org.openide.NotifyDescriptor;
|
import org.openide.NotifyDescriptor;
|
||||||
import org.openide.modules.InstalledFileLocator;
|
import org.openide.modules.InstalledFileLocator;
|
||||||
import org.openide.util.NbBundle;
|
import org.openide.util.NbBundle;
|
||||||
|
import org.openide.util.NbBundle.Messages;
|
||||||
import org.python.util.PythonInterpreter;
|
import org.python.util.PythonInterpreter;
|
||||||
import org.sleuthkit.autopsy.coreutils.Logger;
|
import org.sleuthkit.autopsy.coreutils.Logger;
|
||||||
|
import org.sleuthkit.autopsy.coreutils.MessageNotifyUtil;
|
||||||
import org.sleuthkit.autopsy.coreutils.PlatformUtil;
|
import org.sleuthkit.autopsy.coreutils.PlatformUtil;
|
||||||
import org.sleuthkit.autopsy.ingest.IngestModuleFactory;
|
import org.sleuthkit.autopsy.ingest.IngestModuleFactory;
|
||||||
import org.sleuthkit.autopsy.report.GeneralReportModule;
|
import org.sleuthkit.autopsy.report.GeneralReportModule;
|
||||||
@ -66,15 +68,19 @@ public final class JythonModuleLoader {
|
|||||||
public static List<GeneralReportModule> getGeneralReportModules() {
|
public static List<GeneralReportModule> getGeneralReportModules() {
|
||||||
return getInterfaceImplementations(new GeneralReportModuleDefFilter(), GeneralReportModule.class);
|
return getInterfaceImplementations(new GeneralReportModuleDefFilter(), GeneralReportModule.class);
|
||||||
}
|
}
|
||||||
|
@Messages({"JythonModuleLoader.pythonInterpreterError.title=Python Modules",
|
||||||
|
"JythonModuleLoader.pythonInterpreterError.msg=Failed to load python modules, See log for more details"})
|
||||||
private static <T> List<T> getInterfaceImplementations(LineFilter filter, Class<T> interfaceClass) {
|
private static <T> List<T> getInterfaceImplementations(LineFilter filter, Class<T> interfaceClass) {
|
||||||
List<T> objects = new ArrayList<>();
|
List<T> objects = new ArrayList<>();
|
||||||
Set<File> pythonModuleDirs = new HashSet<>();
|
Set<File> pythonModuleDirs = new HashSet<>();
|
||||||
PythonInterpreter interpreter = null;
|
PythonInterpreter interpreter = null;
|
||||||
|
// This method has previously thrown unchecked exceptions when it could not load because of non-latin characters.
|
||||||
try {
|
try {
|
||||||
interpreter = new PythonInterpreter();
|
interpreter = new PythonInterpreter();
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
logger.log(Level.SEVERE, "Failed to load python Intepreter. Cannot load python modules", ex);
|
logger.log(Level.SEVERE, "Failed to load python Intepreter. Cannot load python modules", ex);
|
||||||
|
MessageNotifyUtil.Notify.show(Bundle.JythonModuleLoader_pythonInterpreterError_title(),Bundle.JythonModuleLoader_pythonInterpreterError_msg(), MessageNotifyUtil.MessageType.ERROR);
|
||||||
|
return objects;
|
||||||
}
|
}
|
||||||
// add python modules from 'autospy/build/cluster/InternalPythonModules' folder
|
// add python modules from 'autospy/build/cluster/InternalPythonModules' folder
|
||||||
// which are copied from 'autopsy/*/release/InternalPythonModules' folders.
|
// which are copied from 'autopsy/*/release/InternalPythonModules' folders.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user