git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use font.getName, not font.getFontName
[jalview.git]
/
src
/
jalview
/
ws
/
MsaWSClient.java
diff --git
a/src/jalview/ws/MsaWSClient.java
b/src/jalview/ws/MsaWSClient.java
index
94e19e7
..
0d5c22e
100755
(executable)
--- a/
src/jalview/ws/MsaWSClient.java
+++ b/
src/jalview/ws/MsaWSClient.java
@@
-26,28
+26,38
@@
import jalview.datamodel.*;
\r
import jalview.gui.*;
\r
\r
\r
import jalview.gui.*;
\r
\r
-import org.apache.axis.client.*;
\r
-
\r
-import vamsas.objects.*;
\r
-
\r
-import java.awt.*;
\r
-
\r
import java.util.*;
\r
\r
import javax.swing.*;
\r
\r
import java.util.*;
\r
\r
import javax.swing.*;
\r
\r
-import javax.xml.namespace.QName;
\r
\r
\r
-
\r
-public class MsaWSClient extends WSClient {
\r
- /**
\r
- * server is a WSDL2Java generated stub for an archetypal MsaWSI service.
\r
+/**
\r
+ * DOCUMENT ME!
\r
+ *
\r
+ * @author $author$
\r
+ * @version $Revision$
\r
*/
\r
*/
\r
+public class MsaWSClient extends WSClient
\r
+{
\r
+ /**
\r
+ * server is a WSDL2Java generated stub for an archetypal MsaWSI service.
\r
+ */
\r
ext.vamsas.MuscleWS server;
\r
\r
ext.vamsas.MuscleWS server;
\r
\r
+ /**
\r
+ * Creates a new MsaWSClient object.
\r
+ *
\r
+ * @param MsaWSName DOCUMENT ME!
\r
+ * @param altitle DOCUMENT ME!
\r
+ * @param msa DOCUMENT ME!
\r
+ * @param submitGaps DOCUMENT ME!
\r
+ * @param preserveOrder DOCUMENT ME!
\r
+ */
\r
public MsaWSClient(String MsaWSName, String altitle, SequenceI[] msa,
\r
public MsaWSClient(String MsaWSName, String altitle, SequenceI[] msa,
\r
- boolean submitGaps, boolean preserveOrder) {
\r
- if (setWebService(MsaWSName) == false) {
\r
+ boolean submitGaps, boolean preserveOrder)
\r
+ {
\r
+ if (setWebService(MsaWSName) == false)
\r
+ {
\r
JOptionPane.showMessageDialog(Desktop.desktop,
\r
"The Multiple Sequence Alignment Service named " + MsaWSName +
\r
" is unknown", "Internal Jalview Error",
\r
JOptionPane.showMessageDialog(Desktop.desktop,
\r
"The Multiple Sequence Alignment Service named " + MsaWSName +
\r
" is unknown", "Internal Jalview Error",
\r
@@
-59,7
+69,8
@@
public class MsaWSClient extends WSClient {
wsInfo = new jalview.gui.WebserviceInfo(WebServiceJobTitle,
\r
WebServiceReference);
\r
\r
wsInfo = new jalview.gui.WebserviceInfo(WebServiceJobTitle,
\r
WebServiceReference);
\r
\r
- if (!locateWebService()) {
\r
+ if (!locateWebService())
\r
+ {
\r
return;
\r
}
\r
\r
return;
\r
}
\r
\r
@@
-73,8
+84,10
@@
public class MsaWSClient extends WSClient {
}
\r
\r
// JBPNote Nasty object-global state setting methods shouldn't be allowed
\r
}
\r
\r
// JBPNote Nasty object-global state setting methods shouldn't be allowed
\r
- private boolean setWebService(String MsaWSName) {
\r
- if (MsaWServices.info.containsKey(MsaWSName)) {
\r
+ private boolean setWebService(String MsaWSName)
\r
+ {
\r
+ if (MsaWServices.info.containsKey(MsaWSName))
\r
+ {
\r
WebServiceName = MsaWSName;
\r
\r
String[] wsinfo = (String[]) MsaWServices.info.get(MsaWSName);
\r
WebServiceName = MsaWSName;
\r
\r
String[] wsinfo = (String[]) MsaWServices.info.get(MsaWSName);
\r
@@
-83,19
+96,30
@@
public class MsaWSClient extends WSClient {
WebServiceReference = wsinfo[2];
\r
\r
return true;
\r
WebServiceReference = wsinfo[2];
\r
\r
return true;
\r
- } else {
\r
+ }
\r
+ else
\r
+ {
\r
return false;
\r
}
\r
}
\r
\r
return false;
\r
}
\r
}
\r
\r
- private boolean locateWebService() {
\r
+ /**
\r
+ * DOCUMENT ME!
\r
+ *
\r
+ * @return DOCUMENT ME!
\r
+ */
\r
+ private boolean locateWebService()
\r
+ {
\r
// TODO: MuscleWS transmuted to generic MsaWS client
\r
MuscleWSServiceLocator loc = new MuscleWSServiceLocator(); // Default
\r
\r
// TODO: MuscleWS transmuted to generic MsaWS client
\r
MuscleWSServiceLocator loc = new MuscleWSServiceLocator(); // Default
\r
\r
- try {
\r
+ try
\r
+ {
\r
this.server = (MuscleWS) loc.getMuscleWS(new java.net.URL(WsURL));
\r
((MuscleWSSoapBindingStub) this.server).setTimeout(60000); // One minute timeout
\r
this.server = (MuscleWS) loc.getMuscleWS(new java.net.URL(WsURL));
\r
((MuscleWSSoapBindingStub) this.server).setTimeout(60000); // One minute timeout
\r
- } catch (Exception ex) {
\r
+ }
\r
+ catch (Exception ex)
\r
+ {
\r
wsInfo.setProgressText("Serious! " + WebServiceName +
\r
" Service location failed\nfor URL :" + WsURL + "\n" +
\r
ex.getMessage());
\r
wsInfo.setProgressText("Serious! " + WebServiceName +
\r
" Service location failed\nfor URL :" + WsURL + "\n" +
\r
ex.getMessage());
\r
@@
-110,7
+134,8
@@
public class MsaWSClient extends WSClient {
return true;
\r
}
\r
\r
return true;
\r
}
\r
\r
- protected class MsaWSThread extends Thread implements WSClientI {
\r
+ protected class MsaWSThread extends Thread implements WSClientI
\r
+ {
\r
String ServiceName = WebServiceName;
\r
String OutputHeader;
\r
vamsas.objects.simple.MsaResult result = null;
\r
String ServiceName = WebServiceName;
\r
String OutputHeader;
\r
vamsas.objects.simple.MsaResult result = null;
\r
@@
-124,7
+149,8
@@
public class MsaWSClient extends WSClient {
boolean jobComplete = false;
\r
\r
MsaWSThread(String title, SequenceI[] msa, boolean subgaps,
\r
boolean jobComplete = false;
\r
\r
MsaWSThread(String title, SequenceI[] msa, boolean subgaps,
\r
- boolean presorder) {
\r
+ boolean presorder)
\r
+ {
\r
alTitle = title;
\r
submitGaps = subgaps;
\r
preserveOrder = presorder;
\r
alTitle = title;
\r
submitGaps = subgaps;
\r
preserveOrder = presorder;
\r
@@
-134,7
+160,8
@@
public class MsaWSClient extends WSClient {
\r
vamsas.objects.simple.Sequence[] seqarray = new vamsas.objects.simple.Sequence[msa.length];
\r
\r
\r
vamsas.objects.simple.Sequence[] seqarray = new vamsas.objects.simple.Sequence[msa.length];
\r
\r
- for (int i = 0; i < msa.length; i++) {
\r
+ for (int i = 0; i < msa.length; i++)
\r
+ {
\r
String newname = jalview.analysis.SeqsetUtils.unique_name(i);
\r
\r
// uniquify as we go
\r
String newname = jalview.analysis.SeqsetUtils.unique_name(i);
\r
\r
// uniquify as we go
\r
@@
-152,85
+179,114
@@
public class MsaWSClient extends WSClient {
this.seqs.setSeqs(seqarray);
\r
}
\r
\r
this.seqs.setSeqs(seqarray);
\r
}
\r
\r
- public boolean isCancellable() {
\r
+ public boolean isCancellable()
\r
+ {
\r
return true;
\r
}
\r
\r
return true;
\r
}
\r
\r
- public void cancelJob() {
\r
- if ((jobId != null) && !jobId.equals("") && !jobComplete) {
\r
+ public void cancelJob()
\r
+ {
\r
+ if ((jobId != null) && !jobId.equals("") && !jobComplete)
\r
+ {
\r
String cancelledMessage = "";
\r
\r
String cancelledMessage = "";
\r
\r
- try {
\r
+ try
\r
+ {
\r
vamsas.objects.simple.WsJobId cancelledJob = server.cancel(jobId);
\r
\r
vamsas.objects.simple.WsJobId cancelledJob = server.cancel(jobId);
\r
\r
- if (cancelledJob.getStatus() == 2) {
\r
+ if (cancelledJob.getStatus() == 2)
\r
+ {
\r
// CANCELLED_JOB
\r
cancelledMessage = "Job cancelled.";
\r
wsInfo.setStatus(WebserviceInfo.STATE_CANCELLED_OK);
\r
jobComplete = true;
\r
jobsRunning--;
\r
result = null;
\r
// CANCELLED_JOB
\r
cancelledMessage = "Job cancelled.";
\r
wsInfo.setStatus(WebserviceInfo.STATE_CANCELLED_OK);
\r
jobComplete = true;
\r
jobsRunning--;
\r
result = null;
\r
- } else if (cancelledJob.getStatus() == 3) {
\r
+ }
\r
+ else if (cancelledJob.getStatus() == 3)
\r
+ {
\r
// VALID UNSTOPPABLE JOB
\r
cancelledMessage += "Server cannot cancel this job. just close the window.\n";
\r
}
\r
\r
// VALID UNSTOPPABLE JOB
\r
cancelledMessage += "Server cannot cancel this job. just close the window.\n";
\r
}
\r
\r
- if (cancelledJob.getJobId() != null) {
\r
+ if (cancelledJob.getJobId() != null)
\r
+ {
\r
cancelledMessage += ("[" + cancelledJob.getJobId() +
\r
"]");
\r
}
\r
\r
cancelledMessage += "\n";
\r
cancelledMessage += ("[" + cancelledJob.getJobId() +
\r
"]");
\r
}
\r
\r
cancelledMessage += "\n";
\r
- } catch (Exception exc) {
\r
+ }
\r
+ catch (Exception exc)
\r
+ {
\r
cancelledMessage += ("\nProblems cancelling the job : Exception received...\n" +
\r
exc + "\n");
\r
exc.printStackTrace();
\r
}
\r
\r
wsInfo.setProgressText(OutputHeader + cancelledMessage + "\n");
\r
cancelledMessage += ("\nProblems cancelling the job : Exception received...\n" +
\r
exc + "\n");
\r
exc.printStackTrace();
\r
}
\r
\r
wsInfo.setProgressText(OutputHeader + cancelledMessage + "\n");
\r
- } else {
\r
- if (!jobComplete) {
\r
+ }
\r
+ else
\r
+ {
\r
+ if (!jobComplete)
\r
+ {
\r
wsInfo.setProgressText(OutputHeader +
\r
"Server cannot cancel this job because it has not been submitted properly. just close the window.\n");
\r
}
\r
}
\r
}
\r
\r
wsInfo.setProgressText(OutputHeader +
\r
"Server cannot cancel this job because it has not been submitted properly. just close the window.\n");
\r
}
\r
}
\r
}
\r
\r
- public void run() {
\r
+ public void run()
\r
+ {
\r
StartJob();
\r
\r
StartJob();
\r
\r
- while (!jobComplete && (allowedServerExceptions > 0)) {
\r
- try {
\r
- if ((result = server.getResult(jobId)) == null) {
\r
+ while (!jobComplete && (allowedServerExceptions > 0))
\r
+ {
\r
+ try
\r
+ {
\r
+ if ((result = server.getResult(jobId)) == null)
\r
+ {
\r
throw (new Exception(
\r
"Timed out when communicating with server\nTry again later.\n"));
\r
}
\r
\r
throw (new Exception(
\r
"Timed out when communicating with server\nTry again later.\n"));
\r
}
\r
\r
- if (result.isRunning()) {
\r
+ if (result.isRunning())
\r
+ {
\r
wsInfo.setStatus(WebserviceInfo.STATE_RUNNING);
\r
wsInfo.setStatus(WebserviceInfo.STATE_RUNNING);
\r
- } else if (result.isQueued()) {
\r
+ }
\r
+ else if (result.isQueued())
\r
+ {
\r
wsInfo.setStatus(WebserviceInfo.STATE_QUEUING);
\r
}
\r
\r
wsInfo.setStatus(WebserviceInfo.STATE_QUEUING);
\r
}
\r
\r
- if (result.isFinished()) {
\r
+ if (result.isFinished())
\r
+ {
\r
parseResult();
\r
jobComplete = true;
\r
jobsRunning--;
\r
parseResult();
\r
jobComplete = true;
\r
jobsRunning--;
\r
- } else {
\r
- if (result.getStatus() != null) {
\r
+ }
\r
+ else
\r
+ {
\r
+ if (result.getStatus() != null)
\r
+ {
\r
wsInfo.setProgressText(OutputHeader + "\n" +
\r
result.getStatus());
\r
}
\r
\r
wsInfo.setProgressText(OutputHeader + "\n" +
\r
result.getStatus());
\r
}
\r
\r
- if (!(result.isJobFailed() || result.isServerError())) {
\r
+ if (!(result.isJobFailed() || result.isServerError()))
\r
+ {
\r
Thread.sleep(5000);
\r
\r
// System.out.println("I'm alive "+seqid+" "+jobid);
\r
Thread.sleep(5000);
\r
\r
// System.out.println("I'm alive "+seqid+" "+jobid);
\r
- } else {
\r
+ }
\r
+ else
\r
+ {
\r
break;
\r
}
\r
}
\r
break;
\r
}
\r
}
\r
- } catch (Exception ex) {
\r
+ }
\r
+ catch (Exception ex)
\r
+ {
\r
allowedServerExceptions--;
\r
wsInfo.appendProgressText("\n" + ServiceName +
\r
" Server exception!\n" + ex.getMessage());
\r
allowedServerExceptions--;
\r
wsInfo.appendProgressText("\n" + ServiceName +
\r
" Server exception!\n" + ex.getMessage());
\r
@@
-238,59
+294,81
@@
public class MsaWSClient extends WSClient {
ex.getMessage());
\r
\r
// ex.printStackTrace(); JBPNote Debug
\r
ex.getMessage());
\r
\r
// ex.printStackTrace(); JBPNote Debug
\r
- try {
\r
- if (allowedServerExceptions > 0) {
\r
+ try
\r
+ {
\r
+ if (allowedServerExceptions > 0)
\r
+ {
\r
Thread.sleep(5000);
\r
}
\r
Thread.sleep(5000);
\r
}
\r
- } catch (InterruptedException ex1) {
\r
+ }
\r
+ catch (InterruptedException ex1)
\r
+ {
\r
}
\r
}
\r
}
\r
\r
}
\r
}
\r
}
\r
\r
- if (allowedServerExceptions == 0) {
\r
+ if (allowedServerExceptions == 0)
\r
+ {
\r
wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_SERVERERROR);
\r
wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_SERVERERROR);
\r
- } else {
\r
+ }
\r
+ else
\r
+ {
\r
if (!((result != null) &&
\r
if (!((result != null) &&
\r
- (result.isJobFailed() || result.isServerError()))) {
\r
+ (result.isJobFailed() || result.isServerError())))
\r
+ {
\r
wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_OK);
\r
wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_OK);
\r
- } else {
\r
- if (result.isFailed()) {
\r
+ }
\r
+ else
\r
+ {
\r
+ if (result.isFailed())
\r
+ {
\r
wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_ERROR);
\r
}
\r
\r
wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_ERROR);
\r
}
\r
\r
- if (result.isServerError()) {
\r
+ if (result.isServerError())
\r
+ {
\r
wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_SERVERERROR);
\r
}
\r
}
\r
}
\r
}
\r
\r
wsInfo.setStatus(WebserviceInfo.STATE_STOPPED_SERVERERROR);
\r
}
\r
}
\r
}
\r
}
\r
\r
- void StartJob() {
\r
- try {
\r
+ void StartJob()
\r
+ {
\r
+ try
\r
+ {
\r
vamsas.objects.simple.WsJobId jobsubmit = server.align(seqs);
\r
\r
vamsas.objects.simple.WsJobId jobsubmit = server.align(seqs);
\r
\r
- if ((jobsubmit != null) && (jobsubmit.getStatus() == 1)) {
\r
+ if ((jobsubmit != null) && (jobsubmit.getStatus() == 1))
\r
+ {
\r
jobId = jobsubmit.getJobId();
\r
System.out.println(WsURL + " Job Id '" + jobId + "'");
\r
jobId = jobsubmit.getJobId();
\r
System.out.println(WsURL + " Job Id '" + jobId + "'");
\r
- } else {
\r
- if (jobsubmit == null) {
\r
+ }
\r
+ else
\r
+ {
\r
+ if (jobsubmit == null)
\r
+ {
\r
throw new Exception("Server at " + WsURL +
\r
" returned null object, it probably cannot be contacted. Try again later ?");
\r
}
\r
\r
throw new Exception(jobsubmit.getJobId());
\r
}
\r
throw new Exception("Server at " + WsURL +
\r
" returned null object, it probably cannot be contacted. Try again later ?");
\r
}
\r
\r
throw new Exception(jobsubmit.getJobId());
\r
}
\r
- } catch (Exception e) {
\r
+ }
\r
+ catch (Exception e)
\r
+ {
\r
// TODO: JBPNote catch timeout or other fault types explicitly
\r
// For unexpected errors
\r
System.err.println(WebServiceName +
\r
// TODO: JBPNote catch timeout or other fault types explicitly
\r
// For unexpected errors
\r
System.err.println(WebServiceName +
\r
- "Client: Failed to submit the sequences for alignment (probably a server side problem)\n"
\r
- + "When contacting Server:"+WsURL + "\n" + e.toString() + "\n");
\r
+ "Client: Failed to submit the sequences for alignment (probably a server side problem)\n" +
\r
+ "When contacting Server:" + WsURL + "\n" + e.toString() +
\r
+ "\n");
\r
this.allowedServerExceptions = 0;
\r
wsInfo.setStatus(wsInfo.STATE_STOPPED_SERVERERROR);
\r
this.allowedServerExceptions = 0;
\r
wsInfo.setStatus(wsInfo.STATE_STOPPED_SERVERERROR);
\r
- wsInfo.appendProgressText("Failed to submit sequences for alignment.\n"
\r
- + "It is most likely that there is a problem with the server.\n"
\r
- + "Just close the window\n");
\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
+ "Just close the window\n");
\r
\r
// e.printStackTrace(); // TODO: JBPNote DEBUG
\r
}
\r
\r
// e.printStackTrace(); // TODO: JBPNote DEBUG
\r
}
\r
@@
-298,10
+376,12
@@
public class MsaWSClient extends WSClient {
\r
private void addFloatAnnotations(Alignment al, int[] gapmap,
\r
Vector values, String Symname, String Visname, float min,
\r
\r
private void addFloatAnnotations(Alignment al, int[] gapmap,
\r
Vector values, String Symname, String Visname, float min,
\r
- float max, int winLength) {
\r
+ float max, int winLength)
\r
+ {
\r
Annotation[] annotations = new Annotation[al.getWidth()];
\r
\r
Annotation[] annotations = new Annotation[al.getWidth()];
\r
\r
- for (int j = 0; j < values.size(); j++) {
\r
+ for (int j = 0; j < values.size(); j++)
\r
+ {
\r
float value = Float.parseFloat(values.get(j).toString());
\r
annotations[gapmap[j]] = new Annotation("", value + "", ' ',
\r
value);
\r
float value = Float.parseFloat(values.get(j).toString());
\r
annotations[gapmap[j]] = new Annotation("", value + "", ' ',
\r
value);
\r
@@
-312,7
+392,8
@@
public class MsaWSClient extends WSClient {
}
\r
\r
private jalview.datamodel.Sequence[] getVamsasAlignment(
\r
}
\r
\r
private jalview.datamodel.Sequence[] getVamsasAlignment(
\r
- vamsas.objects.simple.Alignment valign) {
\r
+ vamsas.objects.simple.Alignment valign)
\r
+ {
\r
vamsas.objects.simple.Sequence[] seqs = valign.getSeqs().getSeqs();
\r
jalview.datamodel.Sequence[] msa = new jalview.datamodel.Sequence[seqs.length];
\r
\r
vamsas.objects.simple.Sequence[] seqs = valign.getSeqs().getSeqs();
\r
jalview.datamodel.Sequence[] msa = new jalview.datamodel.Sequence[seqs.length];
\r
\r
@@
-323,20
+404,25
@@
public class MsaWSClient extends WSClient {
return msa;
\r
}
\r
\r
return msa;
\r
}
\r
\r
- void parseResult() {
\r
+ void parseResult()
\r
+ {
\r
SequenceI[] seqs = null;
\r
\r
SequenceI[] seqs = null;
\r
\r
- try {
\r
+ try
\r
+ {
\r
// OutputHeader = output.getText();
\r
// OutputHeader = output.getText();
\r
- if (result.isFailed()) {
\r
+ if (result.isFailed())
\r
+ {
\r
OutputHeader += "Job failed.\n";
\r
}
\r
\r
OutputHeader += "Job failed.\n";
\r
}
\r
\r
- if (result.getStatus() != null) {
\r
+ if (result.getStatus() != null)
\r
+ {
\r
OutputHeader += ("\n" + result.getStatus());
\r
}
\r
\r
OutputHeader += ("\n" + result.getStatus());
\r
}
\r
\r
- if (result.getMsa() != null) {
\r
+ if (result.getMsa() != null)
\r
+ {
\r
OutputHeader += "\nAlignment Object Method Notes\n";
\r
\r
String[] lines = result.getMsa().getMethod();
\r
OutputHeader += "\nAlignment Object Method Notes\n";
\r
\r
String[] lines = result.getMsa().getMethod();
\r
@@
-350,10
+436,12
@@
public class MsaWSClient extends WSClient {
\r
wsInfo.setProgressText(OutputHeader);
\r
\r
\r
wsInfo.setProgressText(OutputHeader);
\r
\r
- if (seqs != null) {
\r
+ if (seqs != null)
\r
+ {
\r
AlignmentOrder msaorder = new AlignmentOrder(seqs);
\r
\r
AlignmentOrder msaorder = new AlignmentOrder(seqs);
\r
\r
- if (preserveOrder) {
\r
+ if (preserveOrder)
\r
+ {
\r
jalview.analysis.AlignmentSorter.recoverOrder(seqs);
\r
}
\r
\r
jalview.analysis.AlignmentSorter.recoverOrder(seqs);
\r
}
\r
\r
@@
-370,7
+458,9
@@
public class MsaWSClient extends WSClient {
AlignFrame.NEW_WINDOW_WIDTH,
\r
AlignFrame.NEW_WINDOW_HEIGHT);
\r
}
\r
AlignFrame.NEW_WINDOW_WIDTH,
\r
AlignFrame.NEW_WINDOW_HEIGHT);
\r
}
\r
- } catch (Exception ex) {
\r
+ }
\r
+ catch (Exception ex)
\r
+ {
\r
ex.printStackTrace();
\r
}
\r
}
\r
ex.printStackTrace();
\r
}
\r
}
\r