/* * 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{ 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(); } } }