19 package org.sleuthkit.autopsy.ingest.runIngestModuleWizard;
 
   21 import java.awt.Cursor;
 
   22 import java.awt.event.ActionEvent;
 
   23 import java.text.MessageFormat;
 
   24 import java.util.ArrayList;
 
   25 import java.util.List;
 
   26 import java.util.logging.Level;
 
   27 import javax.swing.AbstractAction;
 
   28 import javax.swing.Action;
 
   29 import javax.swing.JOptionPane;
 
   30 import javax.swing.RootPaneContainer;
 
   31 import org.openide.DialogDisplayer;
 
   32 import org.openide.WizardDescriptor;
 
   33 import org.openide.util.NbBundle.Messages;
 
   34 import org.openide.windows.WindowManager;
 
   50     @Messages(
"RunIngestModulesAction.name=Run Ingest Modules")
 
   69         List<String> warnings = ingestJobSettings.getWarnings();
 
   70         if (warnings.isEmpty() == 
false) {
 
   71             StringBuilder warningMessage = 
new StringBuilder(1024);
 
   72             for (String warning : warnings) {
 
   73                 warningMessage.append(warning).append(
"\n");
 
   75             JOptionPane.showMessageDialog(WindowManager.getDefault().getMainWindow(), warningMessage.toString());
 
   86         this.putValue(Action.NAME, Bundle.RunIngestModulesAction_name());
 
   87         this.dataSources.addAll(dataSources);
 
   99         this.putValue(Action.NAME, Bundle.RunIngestModulesAction_name());
 
  103             this.setEnabled(parentFile.hasChildren());
 
  104         } 
catch (TskCoreException ex) {
 
  105             this.setEnabled(
false);
 
  106             logger.log(Level.SEVERE, String.format(
"Failed to get children count for parent file %s (objId=%d), RunIngestModulesAction disabled", parentFile.getName(), parentFile.getId()), ex);
 
  117         "RunIngestModulesAction.actionPerformed.errorMessage=Error querying the case database for the selected item." 
  126         RootPaneContainer root = (RootPaneContainer) WindowManager.getDefault().getMainWindow();
 
  127         root.getGlassPane().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
 
  128         root.getGlassPane().setVisible(
true);
 
  130         WizardDescriptor wiz = 
new WizardDescriptor(wizard);
 
  131         wiz.setTitleFormat(
new MessageFormat(
"{0}"));
 
  132         wiz.setTitle(Bundle.RunIngestModulesAction_name());
 
  133         root.getGlassPane().setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
 
  134         root.getGlassPane().setVisible(
false);
 
  135         if (DialogDisplayer.getDefault().notify(wiz) == WizardDescriptor.FINISH_OPTION) {
 
  142                     Content dataSource = 
parentFile.getDataSource();
 
  143                     List<Content> children = 
parentFile.getChildren();
 
  144                     List<AbstractFile> files = 
new ArrayList<>();
 
  145                     for (Content child : children) {
 
  146                         if (child instanceof AbstractFile) {
 
  147                             files.add((AbstractFile) child);
 
  150                     if (!files.isEmpty()) {
 
  153                 } 
catch (TskCoreException ex) {
 
  154                     logger.log(Level.SEVERE, String.format(
"Failed to get data source or children for parent file %s (objId=%d), action failed", 
parentFile.getName(), 
parentFile.getId()), ex);
 
  162     public Object 
clone() throws CloneNotSupportedException {
 
  163         throw new CloneNotSupportedException(
"Clone is not supported for the RunIngestModulesAction");
 
final IngestJobSettings.IngestType ingestType
static synchronized IngestManager getInstance()
final List< Content > dataSources
final AbstractFile parentFile
static final Logger logger
RunIngestModulesAction(List< Content > dataSources)
RunIngestModulesAction(AbstractFile parentFile)
static final long serialVersionUID
static void showWarnings(IngestJobSettings ingestJobSettings)
void queueIngestJob(Collection< Content > dataSources, IngestJobSettings settings)
void actionPerformed(ActionEvent e)
static final String EXECUTION_CONTEXT
static void error(String message)