From 1a122c97ec3a905abf715d506267c32b8ecf198e Mon Sep 17 00:00:00 2001 From: "Peter J. Martel" Date: Tue, 20 Dec 2011 17:56:13 -0500 Subject: [PATCH] Remove ContentNode stuff (runs now) --- .../DataContentViewer.java | 2 +- .../DataContentTopComponent.java | 3 +- .../corecomponents/DataContentViewerHex.java | 2 +- .../DataContentViewerPicture.java | 2 +- .../DataContentViewerString.java | 2 +- .../keywordsearch/ExtractedContentViewer.java | 20 +++--- .../KeywordSearchFilterNode.java | 10 +-- .../keywordsearch/KeywordSearchNode.java | 72 +------------------ 8 files changed, 21 insertions(+), 92 deletions(-) diff --git a/CoreComponentInterfaces/src/org/sleuthkit/autopsy/corecomponentinterfaces/DataContentViewer.java b/CoreComponentInterfaces/src/org/sleuthkit/autopsy/corecomponentinterfaces/DataContentViewer.java index 1aa3360cfb..f77479e6ea 100644 --- a/CoreComponentInterfaces/src/org/sleuthkit/autopsy/corecomponentinterfaces/DataContentViewer.java +++ b/CoreComponentInterfaces/src/org/sleuthkit/autopsy/corecomponentinterfaces/DataContentViewer.java @@ -76,6 +76,6 @@ public interface DataContentViewer { * as determined by a previous check * @return True if viewer preferred, else false */ - public boolean isPreferred(ContentNode node, boolean isSupported); + public boolean isPreferred(Node node, boolean isSupported); } diff --git a/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentTopComponent.java b/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentTopComponent.java index 6369da7cae..47305a5749 100644 --- a/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentTopComponent.java +++ b/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentTopComponent.java @@ -22,7 +22,6 @@ import java.awt.Cursor; import java.beans.PropertyChangeEvent; import java.util.ArrayList; import java.util.List; -import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JTabbedPane; import javax.swing.event.ChangeEvent; @@ -99,7 +98,7 @@ public final class DataContentTopComponent extends TopComponent implements DataC return this.wrapped.isSupported(node); } - boolean isPreferred(ContentNode node, boolean isSupported) { + boolean isPreferred(Node node, boolean isSupported) { return this.wrapped.isPreferred(node, isSupported); } } diff --git a/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java b/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java index b51791fb72..9fa3724107 100644 --- a/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java +++ b/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerHex.java @@ -332,7 +332,7 @@ public class DataContentViewerHex extends javax.swing.JPanel implements DataCont } @Override - public boolean isPreferred(ContentNode node, boolean isSupported) { + public boolean isPreferred(Node node, boolean isSupported) { return false; } diff --git a/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerPicture.java b/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerPicture.java index 493a8034fd..c89d18bf84 100644 --- a/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerPicture.java +++ b/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerPicture.java @@ -155,7 +155,7 @@ public class DataContentViewerPicture extends javax.swing.JPanel implements Data } @Override - public boolean isPreferred(ContentNode node, boolean isSupported) { + public boolean isPreferred(Node node, boolean isSupported) { return isSupported; } diff --git a/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java b/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java index 199b68f0e3..be712b1c15 100644 --- a/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java +++ b/CoreComponents/src/org/sleuthkit/autopsy/corecomponents/DataContentViewerString.java @@ -310,7 +310,7 @@ public class DataContentViewerString extends javax.swing.JPanel implements DataC } @Override - public boolean isPreferred(ContentNode node, boolean isSupported) { + public boolean isPreferred(Node node, boolean isSupported) { return false; } diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/ExtractedContentViewer.java b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/ExtractedContentViewer.java index 5b1dca7fdc..a7e9a7f765 100644 --- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/ExtractedContentViewer.java +++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/ExtractedContentViewer.java @@ -32,8 +32,8 @@ import org.apache.solr.client.solrj.SolrServerException; import org.openide.nodes.Node; import org.openide.util.lookup.ServiceProvider; import org.sleuthkit.autopsy.corecomponentinterfaces.DataContentViewer; -import org.sleuthkit.autopsy.datamodel.ContentNode; import org.apache.commons.lang.StringEscapeUtils; +import org.sleuthkit.datamodel.Content; /** * Displays marked-up (HTML) content for a Node. The sources are all the @@ -52,7 +52,7 @@ public class ExtractedContentViewer implements DataContentViewer { } @Override - public void setNode(final ContentNode selectedNode) { + public void setNode(final Node selectedNode) { // to clear the viewer if (selectedNode == null) { @@ -64,7 +64,7 @@ public class ExtractedContentViewer implements DataContentViewer { // markup is fetched from solr List sources = new ArrayList(); - sources.addAll(((Node) selectedNode).getLookup().lookupAll(MarkupSource.class)); + sources.addAll(selectedNode.getLookup().lookupAll(MarkupSource.class)); if (solrHasContent(selectedNode)) { @@ -141,18 +141,18 @@ public class ExtractedContentViewer implements DataContentViewer { } @Override - public boolean isSupported(ContentNode node) { + public boolean isSupported(Node node) { if (node == null) { return false; } - Collection sources = ((Node) node).getLookup().lookupAll(MarkupSource.class); + Collection sources = node.getLookup().lookupAll(MarkupSource.class); return !sources.isEmpty() || solrHasContent(node); } @Override - public boolean isPreferred(ContentNode node, boolean isSupported) { + public boolean isPreferred(Node node, boolean isSupported) { return isSupported; } @@ -172,11 +172,11 @@ public class ExtractedContentViewer implements DataContentViewer { * @param node * @return true if Solr has content, else false */ - private boolean solrHasContent(ContentNode node) { + private boolean solrHasContent(Node node) { Server.Core solrCore = KeywordSearch.getServer().getCore(); SolrQuery q = new SolrQuery(); q.setQuery("*:*"); - q.addFilterQuery("id:" + node.getContent().getId()); + q.addFilterQuery("id:" + node.getLookup().lookup(Content.class).getId()); q.setFields("id"); try { @@ -194,11 +194,11 @@ public class ExtractedContentViewer implements DataContentViewer { * @return the extracted content * @throws SolrServerException if something goes wrong */ - private String getSolrContent(ContentNode cNode) throws SolrServerException { + private String getSolrContent(Node node) throws SolrServerException { Server.Core solrCore = KeywordSearch.getServer().getCore(); SolrQuery q = new SolrQuery(); q.setQuery("*:*"); - q.addFilterQuery("id:" + cNode.getContent().getId()); + q.addFilterQuery("id:" + node.getLookup().lookup(Content.class).getId()); q.setFields("content"); String content = (String) solrCore.query(q).getResults().get(0).getFieldValue("content"); diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchFilterNode.java b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchFilterNode.java index 57e27fd49d..8e342e01bb 100644 --- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchFilterNode.java +++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchFilterNode.java @@ -23,13 +23,13 @@ import org.apache.commons.lang.StringEscapeUtils; import org.apache.solr.client.solrj.SolrQuery; import org.apache.solr.client.solrj.SolrServerException; import org.apache.solr.client.solrj.response.QueryResponse; +import org.openide.nodes.FilterNode; import org.openide.nodes.Node; +import org.openide.nodes.Node.Property; import org.openide.nodes.PropertySupport; import org.openide.nodes.Sheet; import org.openide.util.lookup.Lookups; import org.openide.util.lookup.ProxyLookup; -import org.sleuthkit.autopsy.datamodel.ContentFilterNode; -import org.sleuthkit.autopsy.datamodel.ContentNode; import org.sleuthkit.autopsy.keywordsearch.Server.Core; import org.sleuthkit.datamodel.Content; @@ -38,20 +38,20 @@ import org.sleuthkit.datamodel.Content; * content matching the search that the Node was found with, and to provide * the full highlighted content as a MarkupSource */ -class KeywordSearchFilterNode extends ContentFilterNode { +class KeywordSearchFilterNode extends FilterNode { private static final int SNIPPET_LENGTH = 45; String solrQuery; KeywordSearchFilterNode(HighlightedMatchesSource highlights, Node original, String solrQuery) { - super((ContentNode) original, null, new ProxyLookup(Lookups.singleton(highlights), original.getLookup())); + super(original, null, new ProxyLookup(Lookups.singleton(highlights), original.getLookup())); this.solrQuery = solrQuery; } String getSnippet() { Core solrCore = KeywordSearch.getServer().getCore(); - Content content = this.getContent(); + Content content = this.getOriginal().getLookup().lookup(Content.class); SolrQuery q = new SolrQuery(); q.setQuery(solrQuery); diff --git a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchNode.java b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchNode.java index ddb2cdcf1d..4db29b61dc 100644 --- a/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchNode.java +++ b/KeywordSearch/src/org/sleuthkit/autopsy/keywordsearch/KeywordSearchNode.java @@ -18,28 +18,21 @@ */ package org.sleuthkit.autopsy.keywordsearch; -import java.sql.SQLException; import java.util.List; import org.openide.nodes.AbstractNode; import org.openide.nodes.Node; -import org.sleuthkit.autopsy.datamodel.ContentNode; -import org.sleuthkit.autopsy.datamodel.ContentNodeVisitor; import org.sleuthkit.autopsy.datamodel.RootContentChildren; import org.sleuthkit.datamodel.Content; import org.sleuthkit.datamodel.FsContent; -import org.sleuthkit.datamodel.TskException; /** * Root Node for keyword search results */ -class KeywordSearchNode extends AbstractNode implements ContentNode { - - private String solrQuery; +class KeywordSearchNode extends AbstractNode { KeywordSearchNode(List keys, final String solrQuery) { super(new RootContentChildren(keys) { - @Override protected Node[] createNodes(Content key) { Node[] originalNodes = super.createNodes(key); @@ -56,68 +49,5 @@ class KeywordSearchNode extends AbstractNode implements ContentNode { return filterNodes; } }); - - this.solrQuery = solrQuery; - } - - - @Override - public long getID() { - throw new UnsupportedOperationException("Not supported yet."); - } - - @Override - public Object[][] getRowValues(int rows) throws SQLException { - int totalNodes = getChildren().getNodesCount(); - - Object[][] objs; - int maxRows = 0; - if (totalNodes > rows) { - objs = new Object[rows][]; - maxRows = rows; - } else { - objs = new Object[totalNodes][]; - maxRows = totalNodes; - } - - for (int i = 0; i < maxRows; i++) { - PropertySet[] props = getChildren().getNodeAt(i).getPropertySets(); - Property[] property = props[0].getProperties(); - objs[i] = new Object[property.length]; - - for (int j = 0; j < property.length; j++) { - try { - objs[i][j] = property[j].getValue(); - } catch (Exception ex) { - objs[i][j] = "n/a"; - } - } - } - return objs; - } - - @Override - public byte[] read(long offset, long len) throws TskException { - throw new UnsupportedOperationException("Not supported yet."); - } - - @Override - public Content getContent() { - return null; - } - - @Override - public String[] getDisplayPath() { - return new String[]{"Solr query: " + this.solrQuery}; - } - - @Override - public String[] getSystemPath() { - throw new UnsupportedOperationException("Not supported yet."); - } - - @Override - public T accept(ContentNodeVisitor v) { - throw new UnsupportedOperationException("Not supported yet."); } }