TAVERNA-992: Attempt to use Apache Tika for mime type guessing
Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/commit/e50757cc Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/tree/e50757cc Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/diff/e50757cc Branch: refs/heads/master Commit: e50757cc2de2e6794ba0925d70f12c70259fbef0 Parents: ebf6fe8 Author: Stian Soiland-Reyes <[email protected]> Authored: Thu Jul 14 15:37:00 2016 +0100 Committer: Stian Soiland-Reyes <[email protected]> Committed: Thu Jul 14 15:37:00 2016 +0100 ---------------------------------------------------------------------- .../RenderedProcessorResultComponent.java | 24 ++++++++++++++------ 1 file changed, 17 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/e50757cc/taverna-results-view/src/main/java/org/apache/taverna/workbench/views/results/processor/RenderedProcessorResultComponent.java ---------------------------------------------------------------------- diff --git a/taverna-results-view/src/main/java/org/apache/taverna/workbench/views/results/processor/RenderedProcessorResultComponent.java b/taverna-results-view/src/main/java/org/apache/taverna/workbench/views/results/processor/RenderedProcessorResultComponent.java index c83dbd5..4e376b1 100644 --- a/taverna-results-view/src/main/java/org/apache/taverna/workbench/views/results/processor/RenderedProcessorResultComponent.java +++ b/taverna-results-view/src/main/java/org/apache/taverna/workbench/views/results/processor/RenderedProcessorResultComponent.java @@ -25,10 +25,9 @@ import static java.awt.BorderLayout.NORTH; import static java.awt.event.ItemEvent.SELECTED; import static javax.swing.BoxLayout.LINE_AXIS; import static javax.swing.SwingUtilities.invokeLater; -import static org.apache.taverna.results.ResultsUtils; +import static org.apache.commons.lang.StringEscapeUtils.escapeHtml; import static org.apache.taverna.workbench.icons.WorkbenchIcons.refreshIcon; import static org.apache.taverna.workbench.views.results.processor.ProcessorResultTreeNode.ProcessorResultTreeNodeState.RESULT_REFERENCE; -import static org.apache.commons.lang.StringEscapeUtils.escapeHtml; import java.awt.BorderLayout; import java.awt.Color; @@ -66,18 +65,21 @@ import javax.swing.text.JTextComponent; import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultTreeCellRenderer; +import org.apache.log4j.Logger; +import org.apache.taverna.databundle.DataBundles; +import org.apache.taverna.databundle.ErrorDocument; import org.apache.taverna.lang.ui.DialogTextArea; import org.apache.taverna.renderers.Renderer; import org.apache.taverna.renderers.RendererException; import org.apache.taverna.renderers.RendererRegistry; import org.apache.taverna.renderers.RendererUtils; +import org.apache.taverna.scufl2.api.port.OutputWorkflowPort; import org.apache.taverna.workbench.views.results.saveactions.SaveIndividualResultSPI; +import org.apache.tika.detect.DefaultDetector; +import org.apache.tika.detect.Detector; +import org.apache.tika.metadata.Metadata; +import org.apache.tika.mime.MediaType; -import org.apache.log4j.Logger; - -import org.apache.taverna.databundle.DataBundles; -import org.apache.taverna.databundle.ErrorDocument; -import org.apache.taverna.scufl2.api.port.OutputWorkflowPort; import eu.medsea.mimeutil.MimeType; /** @@ -461,6 +463,14 @@ public class RenderedProcessorResultComponent extends JPanel { } } + private MediaType getMimeTypes(InputStream inputstream) throws IOException { + Detector detector = new DefaultDetector(DefaultDetector.class.getClassLoader()); + Metadata metadata = new Metadata(); + // TODO: propagate relevant metadata + MediaType x = detector.detect(inputstream, metadata); + return x; + } + /** * Renders the result panel using the last used renderer. */
