19package org.sleuthkit.autopsy.modules.hashdatabase;
21import javax.swing.JOptionPane;
22import org.openide.nodes.Node;
23import org.openide.util.HelpCtx;
24import org.openide.util.NbBundle;
25import org.openide.util.actions.CallableSystemAction;
26import org.openide.windows.WindowManager;
27import org.sleuthkit.autopsy.casemodule.NoCurrentCaseException;
28import org.sleuthkit.autopsy.datamodel.ContentUtils;
29import org.sleuthkit.autopsy.directorytree.HashSearchProvider;
30import org.sleuthkit.datamodel.AbstractFile;
31import org.sleuthkit.datamodel.Content;
32import org.sleuthkit.datamodel.ContentVisitor;
33import org.sleuthkit.datamodel.Directory;
34import org.sleuthkit.datamodel.LayoutFile;
35import org.sleuthkit.datamodel.SlackFile;
36import org.sleuthkit.datamodel.VirtualDirectory;
48 private static HashDbSearchAction
instance =
null;
50 HashDbSearchAction() {
62 public void search(Node contentNode) {
63 Content tempContent = contentNode.getLookup().lookup(Content.class);
75 public AbstractFile
visit(org.sleuthkit.datamodel.File f) {
80 public AbstractFile
visit(org.sleuthkit.datamodel.LocalFile lf) {
85 public AbstractFile
visit(org.sleuthkit.datamodel.DerivedFile df) {
90 public AbstractFile
visit(Directory dir) {
100 public AbstractFile
visit(LayoutFile lf) {
106 public AbstractFile
visit(SlackFile f) {
111 public AbstractFile
visit(VirtualDirectory dir) {
122 @NbBundle.Messages ({
123 "HashDbSearchAction.noOpenCase.errMsg=No open case available."
128 if (
file !=
null && HashDbSearcher.countFilesMd5Hashed() > 0) {
131 JOptionPane.showMessageDialog(WindowManager.getDefault().getMainWindow(),
132 NbBundle.getMessage(
this.getClass(),
133 "HashDbSearchAction.dlgMsg.noFilesHaveMD5Calculated"),
134 NbBundle.getMessage(
this.getClass(),
"HashDbSearchAction.dlgMsg.title"),
135 JOptionPane.ERROR_MESSAGE);
138 JOptionPane.showMessageDialog(WindowManager.getDefault().getMainWindow(),
139 Bundle.HashDbSearchAction_noOpenCase_errMsg(),
140 NbBundle.getMessage(
this.getClass(),
"HashDbSearchAction.dlgMsg.title"),
141 JOptionPane.ERROR_MESSAGE);
146 HashDbSearchThread hashThread =
new HashDbSearchThread(
file);
147 hashThread.execute();
152 return NbBundle.getMessage(this.getClass(),
"HashDbSearchAction.getName.text");
157 return HelpCtx.DEFAULT_HELP;
static boolean isDotDirectory(AbstractFile dir)
AbstractFile visit(org.sleuthkit.datamodel.LocalFile lf)
AbstractFile visit(LayoutFile lf)
AbstractFile visit(org.sleuthkit.datamodel.DerivedFile df)
AbstractFile visit(SlackFile f)
AbstractFile visit(VirtualDirectory dir)
AbstractFile visit(Directory dir)
AbstractFile defaultVisit(Content cntnt)
AbstractFile visit(org.sleuthkit.datamodel.File f)
static HashDbSearchAction instance
void search(Node contentNode)
static final InitializeContentVisitor initializeCV
static HashDbSearchAction getDefault()