diff --git a/API-CHANGES.txt b/API-CHANGES.txt
index 1c268170a4..6a8215b194 100644
--- a/API-CHANGES.txt
+++ b/API-CHANGES.txt
@@ -1,7 +1,6 @@
Changes to make to API when we are ready to make backward incompatible changes:
- HTMLReport has special API for more context on columns and special handling in REportGenerator. Change all reports to the new API.
-- DataContentViewer.isPreferred does not need isSupported to be passed in
- DataContentViewerHex and Strings can have the public setDataView methods removed in favor of the new private ones
- Content.getUniquePath() should not thrown TskException. We should deal with it in the method.
- Make the list of events that Case fires off to be part of an enum to group them together (like IngestManager does).
diff --git a/Core/src/org/sleuthkit/autopsy/contentviewers/Metadata.java b/Core/src/org/sleuthkit/autopsy/contentviewers/Metadata.java
index 96f3f92497..cd0895e0a2 100755
--- a/Core/src/org/sleuthkit/autopsy/contentviewers/Metadata.java
+++ b/Core/src/org/sleuthkit/autopsy/contentviewers/Metadata.java
@@ -185,7 +185,7 @@ public class Metadata extends javax.swing.JPanel implements DataContentViewer
}
@Override
- public int isPreferred(Node node, boolean isSupported) {
+ public int isPreferred(Node node) {
return 1;
}
}
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponentinterfaces/DataContentViewer.java b/Core/src/org/sleuthkit/autopsy/corecomponentinterfaces/DataContentViewer.java
index 6b5736b8a9..7126f0e912 100644
--- a/Core/src/org/sleuthkit/autopsy/corecomponentinterfaces/DataContentViewer.java
+++ b/Core/src/org/sleuthkit/autopsy/corecomponentinterfaces/DataContentViewer.java
@@ -83,16 +83,15 @@ public interface DataContentViewer {
* Checks whether the given viewer is preferred for the Node.
* This is a bit subjective, but the idea is that Autopsy wants to display
* the most relevant tab. The more generic the viewer, the lower
- * the return value should be.
+ * the return value should be. This will only be called on viewers that
+ * support the given node.
*
* @param node Node to check for preference
- * @param isSupported true if the viewer is supported by the node, false otherwise
- * as determined by a previous check
* @return an int (0-10) higher return means the viewer has higher priority
* 0 means not supported
* 1 to 2 means the module will display all file types (such as the hex viewer)
* 3-10 are prioritized by Content viewer developer. Modules that operate on very
* few file types should be towards 10.
*/
- public int isPreferred(Node node, boolean isSupported);
+ public int isPreferred(Node node);
}
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentPanel.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentPanel.java
index 4967d98fb5..7ebd947691 100644
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentPanel.java
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentPanel.java
@@ -181,7 +181,7 @@ public class DataContentPanel extends javax.swing.JPanel implements DataContent,
jTabbedPane1.setEnabledAt(i, true);
// remember the viewer with the highest preference value
- int currentPreferred = dcv.isPreferred(selectedNode, true);
+ int currentPreferred = dcv.isPreferred(selectedNode);
if (currentPreferred > maxPreferred) {
preferredViewerIndex = i;
maxPreferred = currentPreferred;
@@ -258,8 +258,8 @@ public class DataContentPanel extends javax.swing.JPanel implements DataContent,
return this.wrapped.isSupported(node);
}
- int isPreferred(Node node, boolean isSupported) {
- return this.wrapped.isPreferred(node, isSupported);
+ int isPreferred(Node node) {
+ return this.wrapped.isPreferred(node);
}
}
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerArtifact.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerArtifact.java
index 8a3fbdae88..d7249d5771 100644
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerArtifact.java
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerArtifact.java
@@ -326,18 +326,13 @@ public class DataContentViewerArtifact extends javax.swing.JPanel implements Dat
}
@Override
- public int isPreferred(Node node, boolean isSupported) {
+ public int isPreferred(Node node) {
BlackboardArtifact artifact = node.getLookup().lookup(BlackboardArtifact.class);
- if(isSupported) {
- if(artifact == null) {
- return 3;
- }
- else {
- return 5;
- }
+ if(artifact == null) {
+ return 3;
}
else {
- return 0;
+ return 5;
}
}
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java
index f1c4c4016d..0e28a337f8 100644
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java
@@ -434,12 +434,8 @@ public class DataContentViewerHex extends javax.swing.JPanel implements DataCont
}
@Override
- public int isPreferred(Node node, boolean isSupported) {
- if (isSupported) {
- return 1;
- } else {
- return 0;
- }
+ public int isPreferred(Node node) {
+ return 1;
}
@Override
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerMedia.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerMedia.java
index 3d587601a8..7bd6c0d1cd 100644
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerMedia.java
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerMedia.java
@@ -226,25 +226,22 @@ public class DataContentViewerMedia extends javax.swing.JPanel implements DataCo
}
@Override
- public int isPreferred(Node node, boolean isSupported) {
- if (isSupported) {
- //special case, check if deleted video, then do not make it preferred
- AbstractFile file = node.getLookup().lookup(AbstractFile.class);
- if (file == null) {
- return 0;
- }
- String name = file.getName().toLowerCase();
- boolean deleted = file.isDirNameFlagSet(TSK_FS_NAME_FLAG_ENUM.UNALLOC);
-
- if (containsExt(name, videoExtensions) && deleted) {
- return 0;
- }
- else {
- return 7;
- }
- } else {
+ public int isPreferred(Node node) {
+ //special case, check if deleted video, then do not make it preferred
+ AbstractFile file = node.getLookup().lookup(AbstractFile.class);
+ if (file == null) {
return 0;
}
+ String name = file.getName().toLowerCase();
+ boolean deleted = file.isDirNameFlagSet(TSK_FS_NAME_FLAG_ENUM.UNALLOC);
+
+ if (containsExt(name, videoExtensions) && deleted) {
+ return 0;
+ }
+ else {
+ return 7;
+ }
+
}
private static boolean containsExt(String name, String[] exts) {
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java
index ed87edd1df..e8e6f233a5 100644
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java
@@ -484,12 +484,8 @@ public class DataContentViewerString extends javax.swing.JPanel implements DataC
}
@Override
- public int isPreferred(Node node, boolean isSupported) {
- if (node != null && isSupported) {
- return 1;
- } else {
- return 0;
- }
+ public int isPreferred(Node node) {
+ return 1;
}
@Override
diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/docs/corecomponents-toc.xml b/Core/src/org/sleuthkit/autopsy/corecomponents/docs/corecomponents-toc.xml
index f204c293c3..083d26328b 100644
--- a/Core/src/org/sleuthkit/autopsy/corecomponents/docs/corecomponents-toc.xml
+++ b/Core/src/org/sleuthkit/autopsy/corecomponents/docs/corecomponents-toc.xml
@@ -1,31 +1,31 @@
-
-
-
-
- The Content Viewer area is in the lower right area of the interface. - This area is used to view a specific file in a variety of formats. - There are different tabs for different viewers. - Not all tabs support all file types, so only some of them will be enabled. - To display data in this area, a file must be selected from the - Result Viewer window. -
- -- The Content Viewer area is part of a plug-in framework. - You can install modules that will add more viewer types. - This section describes the viewers that come by default with Autopsy. -
- -Here's an example of a "Content Viewer" window:
-Currently, there are 5 main tabs on "Content Viewer" window:
- - - - \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/docs/dataexplorer-about.html b/Core/src/org/sleuthkit/autopsy/corecomponents/docs/dataexplorer-about.html index 5b573e738c..57c48fe62f 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/docs/dataexplorer-about.html +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/docs/dataexplorer-about.html @@ -1,47 +1,47 @@ - - - -- The Data Explorer view in Autopsy is the directory tree - node structure seen on the left hand side. -
- -The data explorer contains the following data:
-The data explorer provides different methods for finding relevant data, such as:
-- The Data Explorer will publish all relevant data to the Result Viewer - when specific nodes are clicked. In general, if you are looking for an 'analysis technique', then this is where you should look. -
- - - \ No newline at end of file diff --git a/Core/src/org/sleuthkit/autopsy/corecomponents/docs/dataresult-about.html b/Core/src/org/sleuthkit/autopsy/corecomponents/docs/dataresult-about.html index bf2f5156ca..59d400e9a4 100644 --- a/Core/src/org/sleuthkit/autopsy/corecomponents/docs/dataresult-about.html +++ b/Core/src/org/sleuthkit/autopsy/corecomponents/docs/dataresult-about.html @@ -1,45 +1,45 @@ - - - -- The Result Viewer windows are in the upper right area of the interface and display the results from selecting something in the - Data Explorer Tree area. - You will have the option to display the results in a variety of formats. -
- -Currently, there are 2 main tabs in the Result Viewer window:
- - -- Viewers in Result Viewers have certain right-click functions built-in into them that can be accessed when a node a certain type is selected (a file, directory or a result). -
- -Here are some examples that you may see:
-Below is an example of a "Result Viewer" window:
-+ The Result Viewer windows are in the upper right area of the interface and display the results from selecting something in the + Data Explorer Tree area. + You will have the option to display the results in a variety of formats. +
+ +Currently, there are 2 main tabs in the Result Viewer window:
+ + ++ Viewers in Result Viewers have certain right-click functions built-in into them that can be accessed when a node a certain type is selected (a file, directory or a result). +
+ +Here are some examples that you may see:
+Below is an example of a "Result Viewer" window:
+- Hex Content Viewer shows you the raw and exact contents of a file. - In this Hex Content Viewer, the data of the file is represented as hexadecimal values grouped in 2 groups of 8 bytes, - followed by one group of 16 ASCII characters which are derived from each pair of hex values (each byte). - Non-printable ASCII characters and characters that would take more than one character space are typically represented by a dot (".") in the following ASCII field. -
- -Below is an example of "Hex Content Viewer" window:
-+ Hex Content Viewer shows you the raw and exact contents of a file. + In this Hex Content Viewer, the data of the file is represented as hexadecimal values grouped in 2 groups of 8 bytes, + followed by one group of 16 ASCII characters which are derived from each pair of hex values (each byte). + Non-printable ASCII characters and characters that would take more than one character space are typically represented by a dot (".") in the following ASCII field. +
+ +Below is an example of "Hex Content Viewer" window:
+- The Media Content Viewer will show a picture or video file. - Video files can be played and paused. - The size of the picture or video will be reduced to fit into the screen. - If you want more complex analysis of the media, then you must export the file. -
-If you select an non-picture file or an unsupported picture format on the "Result Viewers", this tab will be disabled.
-Here's one of the example of the "Media Content Viewer":
-+ The Media Content Viewer will show a picture or video file. + Video files can be played and paused. + The size of the picture or video will be reduced to fit into the screen. + If you want more complex analysis of the media, then you must export the file. +
+If you select an non-picture file or an unsupported picture format on the "Result Viewers", this tab will be disabled.
+Here's one of the example of the "Media Content Viewer":
+Result Content Viewer shows the artifacts (saved results) associated with the item selected in the Result Viewer.
- -Below is an example of "Result Content Viewer" window:
-- Strings Content Viewer scans (potentially binary) data of the file / folder and searches it for data that could be text. - When appropriate data is found, the String Content Viewer shows data strings extracted from binary, decoded, and interpreted as UTF8/16 for the selected script/language. -
-- Note that this is different from the Text Content Viewer, which displays the text for a file that is stored in the keyword search index. - The results may be the same or they could be different, depending how the data were interpreted by the indexer. -
- -Below is an example of "String Content Viewer" window:
-+ Strings Content Viewer scans (potentially binary) data of the file / folder and searches it for data that could be text. + When appropriate data is found, the String Content Viewer shows data strings extracted from binary, decoded, and interpreted as UTF8/16 for the selected script/language. +
++ Note that this is different from the Text Content Viewer, which displays the text for a file that is stored in the keyword search index. + The results may be the same or they could be different, depending how the data were interpreted by the indexer. +
+ +Below is an example of "String Content Viewer" window:
+- Table Results Viewer (Directory Listing) displays the data catalog as a table with some details (properties) of each file. - The properties that it shows are: name, time (modified, changed, accessed, and created), size, flags (directory and meta), mode, user ID, group ID, metadata address, attribute address, and type (directory and meta). - Click the Table Viewer tab to select this view. -
-- The Results Viewer can be also activated for saved results and it can show a high level results grouped, - or a results at a file level, depending on which node on the Directory Tree is selected to populate the Table Results Viewer. -
- -Below is an example of a "Table Results Viewer" window:
-+ Table Results Viewer (Directory Listing) displays the data catalog as a table with some details (properties) of each file. + The properties that it shows are: name, time (modified, changed, accessed, and created), size, flags (directory and meta), mode, user ID, group ID, metadata address, attribute address, and type (directory and meta). + Click the Table Viewer tab to select this view. +
++ The Results Viewer can be also activated for saved results and it can show a high level results grouped, + or a results at a file level, depending on which node on the Directory Tree is selected to populate the Table Results Viewer. +
+ +Below is an example of a "Table Results Viewer" window:
+- Text Content Viewer uses the keyword search index that may have been populated during - Image Ingest. - If a file has text stored in the index, then this tab will be enabled and it will be displayed to the user if a file or a result associated with a file is selected. -
-- This tab may have more text on it than the "String View", which relies on searching the file for text-looking data. - Some files, like PDF, will not have text-looking data at the byte-level, but the keyword indexing process knows how to interpret a PDF file and produce text. - For the files the indexer knows about, there may be the METADATA section at the end of the displayed extracted text. - If an indexed document contains any metadata (such as creation date, author, etc), it will be displayed there. - Note that, unlike the "String View", the Text View does not have its built-in settings for the script/language to use for extracted strings. - This is because the script/language is used at indexing time, and that setting is associated with the Keyword Search indexer, not the viewer. -
-- If this tab is not enabled, then either the file has no text or you did not enable Keyword Search as an ingest module. - Note that this viewer is also used to display highlighted keyword hits when operated in the "Search Matches" mode, - selected on the right-hand side of the viewer's toolbar. -
-+ Text Content Viewer uses the keyword search index that may have been populated during + Image Ingest. + If a file has text stored in the index, then this tab will be enabled and it will be displayed to the user if a file or a result associated with a file is selected. +
++ This tab may have more text on it than the "String View", which relies on searching the file for text-looking data. + Some files, like PDF, will not have text-looking data at the byte-level, but the keyword indexing process knows how to interpret a PDF file and produce text. + For the files the indexer knows about, there may be the METADATA section at the end of the displayed extracted text. + If an indexed document contains any metadata (such as creation date, author, etc), it will be displayed there. + Note that, unlike the "String View", the Text View does not have its built-in settings for the script/language to use for extracted strings. + This is because the script/language is used at indexing time, and that setting is associated with the Keyword Search indexer, not the viewer. +
++ If this tab is not enabled, then either the file has no text or you did not enable Keyword Search as an ingest module. + Note that this viewer is also used to display highlighted keyword hits when operated in the "Search Matches" mode, + selected on the right-hand side of the viewer's toolbar. +
+- Thumbnail Results Viewer displays the data catalog as a table of thumbnail images in adjustable sizes. - This viewer only supports picture file(s) (Currently, only supports JPG, GIF, and PNG formats). - Click the Thumbnail tab to select this view. - Note that for a large number of images in a directory selected in the Data Explorer, or for a View selected that contains - a large number of images, it might take a while to populate this view for the first time before the images are cached. -
- -Below is an example of "Thumbnail Results Viewer" window:
-+ Thumbnail Results Viewer displays the data catalog as a table of thumbnail images in adjustable sizes. + This viewer only supports picture file(s) (Currently, only supports JPG, GIF, and PNG formats). + Click the Thumbnail tab to select this view. + Note that for a large number of images in a directory selected in the Data Explorer, or for a View selected that contains + a large number of images, it might take a while to populate this view for the first time before the images are cached. +
+ +Below is an example of "Thumbnail Results Viewer" window:
+