X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fio%2FBioJsHTMLOutput.java;h=fd9c584eedf291d58652e469526288819f3a34f2;hb=d2bf6a7b7e1bbb4774f13ba2733487ae6b7aae6d;hp=1be97f507c6004abdcb36cb395c880baff5c9e53;hpb=e60cacff9260c47c12cf34a7e191678cfc97d265;p=jalview.git diff --git a/src/jalview/io/BioJsHTMLOutput.java b/src/jalview/io/BioJsHTMLOutput.java index 1be97f5..fd9c584 100644 --- a/src/jalview/io/BioJsHTMLOutput.java +++ b/src/jalview/io/BioJsHTMLOutput.java @@ -68,41 +68,25 @@ public class BioJsHTMLOutput extends HTMLOutput exportStarted(); try { - if (outputFile == null) { outputFile = getOutputFile(); } generatedFile = new File(outputFile); - - String bioJSON = getBioJSONData(); - String bioJSTemplateString = HTMLOutput.readFileAsString(getCurrentBJSTemplateFile()); - String generatedBioJsWithJalviewAlignmentAsJson = bioJSTemplateString - .replaceAll("#sequenceData#", bioJSON).toString(); - - PrintWriter out = new java.io.PrintWriter(new java.io.FileWriter( - generatedFile)); - out.print(generatedBioJsWithJalviewAlignmentAsJson); - out.flush(); - out.close(); - exportCompleted(); - setProgressMessage(MessageManager.formatMessage( - "status.export_complete", "BioJS")); - - } catch (NoFileSelectedException ex) - { - // do noting if no file was selected - } catch (OutOfMemoryError err) + } catch (NoFileSelectedException e) { - System.out.println("########################\n" + "OUT OF MEMORY " - + outputFile + "\n" + "########################"); - new OOMWarning("Creating Image for " + outputFile, err); + setProgressMessage(MessageManager.formatMessage( + "status.cancelled_image_export_operation", "BioJS MSA")); + return; } catch (Exception e) { setProgressMessage(MessageManager.formatMessage( - "info.error_creating_file", "HTML")); + "info.error_creating_file", "BioJS MSA")); e.printStackTrace(); + return; } + new Thread(this).start(); + } @@ -294,4 +278,38 @@ public class BioJsHTMLOutput extends HTMLOutput return generatedFile; } + @Override + public void run() + { + try + { + String bioJSON = getBioJSONData(); + String bioJSTemplateString = HTMLOutput + .readFileAsString(getCurrentBJSTemplateFile()); + String generatedBioJsWithJalviewAlignmentAsJson = bioJSTemplateString + .replaceAll("#sequenceData#", bioJSON).toString(); + + PrintWriter out = new java.io.PrintWriter(new java.io.FileWriter( + generatedFile)); + out.print(generatedBioJsWithJalviewAlignmentAsJson); + out.flush(); + out.close(); + setProgressMessage(MessageManager.formatMessage( + "status.export_complete", "BioJS")); + exportCompleted(); + + } catch (OutOfMemoryError err) + { + System.out.println("########################\n" + "OUT OF MEMORY " + + generatedFile + "\n" + "########################"); + new OOMWarning("Creating Image for " + generatedFile, err); + } catch (Exception e) + { + setProgressMessage(MessageManager.formatMessage( + "info.error_creating_file", "HTML")); + e.printStackTrace(); + } + + } + }