From 8b11d455da750618fec1f0b387ca7d5a94c638c7 Mon Sep 17 00:00:00 2001 From: antelder Date: Wed, 10 Aug 2011 06:41:51 +0000 Subject: Remove the use of the intermediate file git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1156046 13f79535-47bb-0310-9956-ffa450edef68 --- .../sca/diagram/shell/DrawShellCommand.java | 27 ++-------------------- .../tuscany/sca/diagram/shell/SVGViewer.java | 21 ++++++++++------- 2 files changed, 15 insertions(+), 33 deletions(-) (limited to 'collaboration') diff --git a/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java b/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java index 6fb8d06fd6..7124525c92 100644 --- a/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java +++ b/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java @@ -19,22 +19,12 @@ package org.apache.tuscany.sca.diagram.shell; -import java.io.ByteArrayInputStream; -import java.io.File; - -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; - import jline.Completor; import jline.NullCompletor; import org.apache.tuscany.sca.assembly.Composite; -import org.apache.tuscany.sca.assembly.xml.Utils; -import org.apache.tuscany.sca.impl.NodeImpl; import org.apache.tuscany.sca.impl.diagram.DiagramGenerator; -import org.apache.tuscany.sca.impl.io.XMLWriter; import org.apache.tuscany.sca.impl.layout.CompositeEntity; -import org.apache.tuscany.sca.impl.layout.EntityBuilder; import org.apache.tuscany.sca.impl.layout.TuscanyCompositeEntityBuilder; import org.apache.tuscany.sca.shell.Command; import org.apache.tuscany.sca.shell.Shell; @@ -70,26 +60,13 @@ public class DrawShellCommand implements Command { public boolean invoke(String[] args) throws Exception { - NodeImpl node = (NodeImpl)shell.getNode(); - Composite composite = node.getContribution(args[0]).getArtifactModel(args[1]); - - //TODO: really all we want is to pass the Tuscany Composite object to the SVG drawing code, - // but for now as that requires an XML file to the Composite to XML: - -// String compositeXML = Utils.modelToXML(composite, false, node.getExtensionPointRegistry()); -// DocumentBuilder db = DocumentBuilderFactory.newInstance().newDocumentBuilder(); -// Document doc = db.parse(new ByteArrayInputStream(compositeXML.getBytes())); -// EntityBuilder eb = new EntityBuilder(doc); - + Composite composite = shell.getNode().getContribution(args[0]).getArtifactModel(args[1]); TuscanyCompositeEntityBuilder eb = new TuscanyCompositeEntityBuilder(composite); CompositeEntity comp = eb.buildCompositeEntity(); DiagramGenerator dg = new DiagramGenerator(comp); Document svg = dg.buildSVGDocument(); - File outFile = File.createTempFile("tmp", ".svg"); - XMLWriter writer = new XMLWriter(); - writer.fileWriter(svg, outFile); - new SVGViewer(outFile.toURI().toURL().toString()); + new SVGViewer(svg); return true; } diff --git a/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java b/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java index e0d3b39fa5..4eb26d9e61 100644 --- a/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java +++ b/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java @@ -37,20 +37,23 @@ import org.apache.batik.swing.svg.GVTTreeBuilderAdapter; import org.apache.batik.swing.svg.GVTTreeBuilderEvent; import org.apache.batik.swing.svg.SVGDocumentLoaderAdapter; import org.apache.batik.swing.svg.SVGDocumentLoaderEvent; +import org.w3c.dom.Document; public class SVGViewer { public static void main(String[] args) { - new SVGViewer("../CompositeDiagramGeneratorUsingBatik/output/Calculator_diagram.svg"); +// new SVGViewer("../CompositeDiagramGeneratorUsingBatik/output/Calculator_diagram.svg"); } protected JFrame frame; protected JLabel label = new JLabel(); protected JSVGCanvas svgCanvas = new JSVGCanvas(); protected String svgFile; + private Document doc; - public SVGViewer(String svgFile) { - this.svgFile = svgFile; + public SVGViewer(Document doc) { +// this.svgFile = svgFile; + this.doc = doc; this.frame = new JFrame("Batik"); frame.getContentPane().add(createComponents()); frame.addWindowListener(new WindowAdapter() { @@ -65,11 +68,13 @@ public class SVGViewer { public JComponent createComponents() { final JPanel panel = new JPanel(new BorderLayout()); panel.add("Center", svgCanvas); - try { - svgCanvas.setURI(new File(svgFile).toURI().toURL().toString()); - } catch (MalformedURLException e) { - e.printStackTrace(); - } +// try { +// svgCanvas.setURI(new File(svgFile).toURI().toURL().toString()); +// } catch (MalformedURLException e) { +// e.printStackTrace(); +// } + + svgCanvas.setDocument(doc); svgCanvas.addSVGDocumentLoaderListener(new SVGDocumentLoaderAdapter() { public void documentLoadingStarted(SVGDocumentLoaderEvent e) { -- cgit v1.2.3