more efficient set/append
authorjprocter <Jim Procter>
Tue, 14 Dec 2010 18:01:00 +0000 (18:01 +0000)
committerjprocter <Jim Procter>
Tue, 14 Dec 2010 18:01:00 +0000 (18:01 +0000)
src/jalview/ws/JobStateSummary.java

index 62f172d..3ac1f73 100644 (file)
@@ -119,15 +119,25 @@ public class JobStateSummary
         wsInfo.setStatus(j.jobnum, WebserviceInfo.STATE_STOPPED_ERROR);
       }
       // and pass on any sub-job messages to the user
-      wsInfo.setProgressText(j.jobnum, OutputHeader);
-      wsInfo.appendProgressText(j.jobnum, progheader);
+      StringBuffer output=new StringBuffer();
+      if (OutputHeader!=null) {
+        
+        output.append(OutputHeader);
+      }
+      if (progheader!=null)
+      {
+        output.append(progheader);
+      }
       if (j.hasStatus())
       {
         // Could try to squash OOMs here, but it usually doesn't help - there
         // probably won't be
         // enough memory to handle the results later on anyway.
         // try {
-        wsInfo.appendProgressText(j.jobnum, j.getStatus());
+        String stat =  j.getStatus();
+        if (stat!=null) {
+          output.append(stat);
+        }
         // } catch (OutOfMemoryError e)
         // {
         // System.err.println("Out of memory when displaying status. Squashing error.");
@@ -135,6 +145,7 @@ public class JobStateSummary
         // "..\n(Out of memory when displaying status)\n");
         // }
       }
+      wsInfo.setProgressText(j.jobnum,output.toString());
     }
     else
     {