19 package org.sleuthkit.autopsy.actions;
 
   21 import java.awt.Cursor;
 
   22 import java.awt.event.ActionEvent;
 
   23 import java.awt.event.ActionListener;
 
   24 import java.util.concurrent.ExecutionException;
 
   25 import java.util.logging.Level;
 
   26 import javax.swing.SwingWorker;
 
   27 import org.openide.LifecycleManager;
 
   28 import org.openide.awt.ActionID;
 
   29 import org.openide.awt.ActionReference;
 
   30 import org.openide.awt.ActionRegistration;
 
   31 import org.openide.util.NbBundle;
 
   32 import org.openide.windows.WindowManager;
 
   43 @ActionRegistration(displayName = 
"#CTL_ExitAction", iconInMenu = 
true)
 
   44 @ActionReference(path = 
"Menu/Case", position = 1000, separatorBefore = 999)
 
   45 @ActionID(
id = 
"org.sleuthkit.autopsy.casemodule.ExitAction", category = 
"Case")
 
   46 final public class 
ExitAction implements ActionListener {
 
   51         "ExitAction.confirmationDialog.title=Ingest is Running",
 
   52         "ExitAction.confirmationDialog.message=Ingest is running, are you sure you want to exit?",
 
   53         "# {0} - exception message", 
"ExitAction.messageBox.caseCloseExceptionMessage=Error closing case: {0}" 
   58             WindowManager.getDefault().getMainWindow().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
 
   59             new SwingWorker<Void, Void>() {
 
   62                 protected Void doInBackground() 
throws Exception {
 
   68                 protected void done() {
 
   71                     } 
catch (InterruptedException ex) {
 
   72                         logger.log(Level.SEVERE, 
"Unexpected interrupt closing the current case", ex);
 
   73                     } 
catch (ExecutionException ex) {
 
   74                         logger.log(Level.SEVERE, 
"Error closing the current case", ex);
 
   77                         WindowManager.getDefault().getMainWindow().setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
 
   78                         LifecycleManager.getDefault().exit();
 
static void closeCurrentCase()
static boolean checkAndConfirmProceed(String optionsDlgTitle, String optionsDlgMessage)
void actionPerformed(ActionEvent e)
synchronized static Logger getLogger(String name)
static void error(String message)