*/\r
\r
public MsaWSClient(ext.vamsas.ServiceHandle sh, String altitle, SequenceI[] msa,\r
- boolean submitGaps, boolean preserveOrder)\r
+ boolean submitGaps, boolean preserveOrder, Alignment seqdataset)\r
{\r
\r
if (!sh.getAbstractName().equals("MsaWS"))\r
\r
return;\r
}\r
- startMsaWSClient(altitle, msa, submitGaps, preserveOrder);\r
+ startMsaWSClient(altitle, msa, submitGaps, preserveOrder, seqdataset);\r
\r
}\r
\r
\r
private void startMsaWSClient(String altitle, SequenceI[] msa,\r
- boolean submitGaps, boolean preserveOrder)\r
+ boolean submitGaps, boolean preserveOrder, Alignment seqdataset)\r
{\r
if (!locateWebService())\r
{\r
\r
MsaWSThread musclethread = new MsaWSThread(WebServiceName +\r
" alignment of " + altitle, msa,\r
- submitGaps, preserveOrder);\r
+ submitGaps, preserveOrder, seqdataset);\r
wsInfo.setthisService(musclethread);\r
musclethread.start();\r
}\r
" Service location failed\nfor URL :" + WsURL +\r
"\n" +\r
ex.getMessage());\r
- wsInfo.setStatus(wsInfo.ERROR);\r
+ wsInfo.setStatus(WebserviceInfo.ERROR);\r
ex.printStackTrace();\r
\r
return false;\r
vamsas.objects.simple.SequenceSet seqs = new vamsas.objects.simple.\r
SequenceSet();\r
Hashtable SeqNames = null;\r
- boolean submitGaps = false; // and always store and recover sequence order\r
+ boolean submitGaps = false; // pass sequences including gaps to alignment service\r
boolean preserveOrder = true; // and always store and recover sequence order\r
String jobId;\r
String alTitle; // name which will be used to form new alignment window.\r
int allowedServerExceptions = 3; // thread dies if too many exceptions.\r
boolean jobComplete = false;\r
\r
+ Alignment dataset; // dataset to which the new alignment will be associated.\r
+\r
MsaWSThread(String title, SequenceI[] msa, boolean subgaps,\r
- boolean presorder)\r
+ boolean presorder, Alignment seqset)\r
{\r
alTitle = title;\r
submitGaps = subgaps;\r
preserveOrder = presorder;\r
-\r
+ dataset = seqset;\r
OutputHeader = wsInfo.getProgressText();\r
SeqNames = new Hashtable();\r
\r
throw (new Exception(\r
"Timed out when communicating with server\nTry again later.\n"));\r
}\r
- jalview.bin.Jalview.log.debug("Result state " + result.getState() +\r
+ jalview.bin.Cache.log.debug("Result state " + result.getState() +\r
"(ServerError=" + result.isServerError() +\r
")");\r
if (result.isRunning())\r
{\r
if (result.getStatus() != null)\r
{\r
- System.out.println("result "+result.getStatus().length());\r
- wsInfo.setProgressText(OutputHeader + "\n" );\r
- // result.getStatus());\r
+ wsInfo.setProgressText(OutputHeader + "\n"+ result.getStatus());\r
}\r
if (result.isServerError())\r
{\r
+"\nSee help files for increasing Java Virtual Machine memory."\r
,"Out of memory", JOptionPane.WARNING_MESSAGE );\r
System.out.println("MsaWSClient: "+er);\r
+ System.gc();\r
}\r
}\r
\r
e.toString() +\r
"\n");\r
this.allowedServerExceptions = 0;\r
- wsInfo.setStatus(wsInfo.STATE_STOPPED_SERVERERROR);\r
+ wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_SERVERERROR);\r
wsInfo.appendProgressText(\r
"Failed to submit sequences for alignment.\n" +\r
"It is most likely that there is a problem with the server.\n" +\r
\r
if (result.getStatus() != null)\r
{\r
- System.out.println("get status " +result.getStatus().length());\r
- // OutputHeader += ("\n" + result.getStatus());\r
+ OutputHeader += ("\n" + result.getStatus());\r
}\r
\r
if (result.getMsa() != null)\r
{\r
- System.out.println("get msa");\r
- // OutputHeader += "\nAlignment Object Method Notes\n";\r
+ OutputHeader += "\nAlignment Object Method Notes\n";\r
\r
String[] lines = result.getMsa().getMethod();\r
\r
-System.out.println("lines "+lines.length);\r
for (int line = 0; line < lines.length; line++)\r
{\r
- // OutputHeader += (lines[line] + "\n");\r
+ OutputHeader += (lines[line] + "\n");\r
}\r
\r
// JBPNote The returned files from a webservice could be hidden behind icons in the monitor window that, when clicked, pop up their corresponding data\r
jalview.analysis.SeqsetUtils.deuniquify(SeqNames, seqs);\r
\r
Alignment al = new Alignment(seqs);\r
-\r
+ if (dataset!=null) {\r
+ al.setDataset(dataset);\r
+ }\r
// TODO: JBPNote Should also rename the query sequence sometime...\r
AlignFrame af = new AlignFrame(al);\r
af.addSortByOrderMenuItem(ServiceName + " Ordering",\r