summaryrefslogtreecommitdiffstats
path: root/Master/Agile Software Development/TestApp/src/testapp/DOTGenerator.java
diff options
context:
space:
mode:
Diffstat (limited to 'Master/Agile Software Development/TestApp/src/testapp/DOTGenerator.java')
-rw-r--r--Master/Agile Software Development/TestApp/src/testapp/DOTGenerator.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/Master/Agile Software Development/TestApp/src/testapp/DOTGenerator.java b/Master/Agile Software Development/TestApp/src/testapp/DOTGenerator.java
new file mode 100644
index 0000000..679c339
--- /dev/null
+++ b/Master/Agile Software Development/TestApp/src/testapp/DOTGenerator.java
@@ -0,0 +1,54 @@
+/*
+ * Class to write the .dot file
+ */
+
+package testapp;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.concurrent.ExecutionException;
+import javax.swing.SwingWorker;
+import testapp.data.Item;
+import java.util.logging.*;
+/**
+ *
+ * @author sven
+ */
+public class DOTGenerator extends SwingWorker<File,Object>{
+ private Item startItem;
+
+ private static final Logger logger = Logger.getLogger(DOTGenerator.class.getName());
+
+ public DOTGenerator(Item startItem) {
+ this.startItem = startItem;
+ }
+
+ @Override
+ protected File doInBackground() throws Exception {
+ File tmpDotFile = null;
+ try {
+ tmpDotFile = File.createTempFile("tmp", ".gv");
+ FileWriter fw = new FileWriter(tmpDotFile);
+ logger.log(Level.INFO, "Path: "+tmpDotFile.getAbsolutePath());
+ fw.write(startItem.toDOT());
+ fw.close();
+ } catch (IOException ioe) {
+ ioe.printStackTrace();
+ }
+ return tmpDotFile;
+ }
+
+ @Override
+ protected void done() {
+ try {
+ GraphGenerator gen = new GraphGenerator(get());
+ gen.execute();
+ } catch (InterruptedException ie) {
+ ie.printStackTrace();
+ } catch (ExecutionException ee) {
+ ee.printStackTrace();
+ }
+ }
+
+}