You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2011/08/10 08:41:51 UTC
svn commit: r1156046 - in
/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell:
DrawShellCommand.java SVGViewer.java
Author: antelder
Date: Wed Aug 10 06:41:51 2011
New Revision: 1156046
URL: http://svn.apache.org/viewvc?rev=1156046&view=rev
Log:
Remove the use of the intermediate file
Modified:
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java
Modified: tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java
URL: http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java?rev=1156046&r1=1156045&r2=1156046&view=diff
==============================================================================
--- tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java (original)
+++ tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/DrawShellCommand.java Wed Aug 10 06:41:51 2011
@@ -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
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;
}
Modified: tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java
URL: http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java?rev=1156046&r1=1156045&r2=1156046&view=diff
==============================================================================
--- tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java (original)
+++ tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramShellPlugin/src/main/java/org/apache/tuscany/sca/diagram/shell/SVGViewer.java Wed Aug 10 06:41:51 2011
@@ -37,20 +37,23 @@ import org.apache.batik.swing.svg.GVTTre
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) {