\r
import javax.xml.ws.WebServiceException;\r
\r
-import org.apache.log4j.Logger;\r
-\r
import compbio.data.msa.JABAService;\r
import compbio.data.msa.Metadata;\r
import compbio.data.msa.MsaWS;\r
*/\r
public class WSTester {\r
\r
- private static Logger log = Logger.getLogger(WSTester.class);\r
/**\r
* Sequences to be used as input for all WS\r
*/\r
- static final String fastaInput = ">Foo\n"\r
+ public static final String fastaInput2records = ">Foo\n"\r
+ "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV"\r
+ "\n>Bar\n"\r
- + "ASDAAPEHPGIALWLHALEDAGQAEAAAAYTRAHQLLPEEPYITAQLLNAVA";\r
+ + "ASDAAPEHPGIALWLHALEDAGQAEAAAAYTRAHQLLPEEPYITAQLLNAVA\n";\r
+ public static final String fastaInput1record = ">Foo\n"\r
+ + "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV"\r
+ + "\n";\r
\r
- static final String fastaAlignment = ">Foo\r\n"\r
- + "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV--------\r\n"\r
- + ">Bar\r\n"\r
- + "ASDAAPEH------------PGIALWLHALE-DAGQAEAAA---AYTRAHQLLPEEPYITAQLLNAVA\r\n"\r
+ public static final String fastaAlignment = ">Foo\n"\r
+ + "MTADGPRELLQLRAAVRHRPQDFVAWLMLADAELGMGDTTAGEMAVQRGLALHPGHPEAV--------\n"\r
+ + ">Bar\n"\r
+ + "ASDAAPEH------------PGIALWLHALE-DAGQAEAAA---AYTRAHQLLPEEPYITAQLLNAVA\n"\r
+ "";\r
\r
- static final List<FastaSequence> seqs = loadSeqs();\r
+ static final List<FastaSequence> seqs = loadSeqs(2);\r
\r
private static final String FAILED = "FAILED";\r
private static final String OK = "OK";\r
* \r
* @return List of FastaSequence records\r
*/\r
- private static List<FastaSequence> loadSeqs() {\r
+ private static List<FastaSequence> loadSeqs(int nLines) {\r
try {\r
- return SequenceUtil.readFasta(new ByteArrayInputStream(fastaInput\r
- .getBytes()));\r
+ if (nLines == 1) {\r
+ return SequenceUtil.readFasta(new ByteArrayInputStream(fastaInput1record.getBytes()));\r
+ }\r
+ return SequenceUtil.readFasta(new ByteArrayInputStream(fastaInput2records.getBytes()));\r
} catch (IOException ignored) {\r
// Should not happen as a source is not a external stream\r
ignored.printStackTrace();\r
+ pseparator + "host_and_context " + "<" + servicekey\r
+ pseparator + "serviceName>");\r
System.out.println();\r
- System.out\r
- .println(hostkey\r
+ System.out.println(hostkey\r
+ pseparator\r
+ "<host_and_context> - a full URL to the JABAWS web server including context path e.g. http://10.31.1.159:8080/ws");\r
- System.out\r
- .println(servicekey\r
+ System.out.println(servicekey\r
+ pseparator\r
+ "<ServiceName> - optional if unspecified all services are tested otherwise one of "\r
+ Arrays.toString(Services.values()));\r
private <T> boolean checkService(JABAService wservice, Services service) {\r
try {\r
if (wservice == null) {\r
- throw new NullPointerException(\r
- "JABAService instance must be provided!");\r
+ throw new NullPointerException("JABAService instance must be provided!");\r
}\r
\r
if (wservice instanceof MsaWS) {\r
return testSequenceAnnotationWS(\r
(SequenceAnnotation<T>) wservice, service);\r
} else {\r
- throw new UnsupportedOperationException("The service: "\r
- + wservice.getClass() + " is not supported! ");\r
+ throw new UnsupportedOperationException("The service: " + wservice.getClass() + " is not supported! ");\r
}\r
} catch (Exception e) {\r
reportException(e);\r
SequenceAnnotation<T> wservice, Services service) throws Exception {\r
writer.print("Calling analyse.........");\r
\r
- List<FastaSequence> input = loadSeqs();\r
+ List<FastaSequence> input = loadSeqs(2);\r
if (service == Services.AAConWS) {\r
input = loadAlignment();\r
}\r
+ if (service == Services.JpredWS) {\r
+ input = loadSeqs(1);\r
+ }\r
boolean success = testDefaultAnalyse(input, wservice, null, null);\r
\r
PresetManager<T> presetman = wservice.getPresets();\r
String host = CmdHelper.getHost(args);\r
String serviceName = CmdHelper.getServiceName(args);\r
if (!Jws2Client.validURL(host)) {\r
- System.err\r
- .println("<host_and_context> parameter is not provided or is incorrect!");\r
+ System.err.println("<host_and_context> parameter is not provided or is incorrect!");\r
System.exit(1);\r
}\r
WSTester tester = new WSTester(host, new PrintWriter(System.out, true));\r
if (serviceName != null) {\r
Services service = Services.getService(serviceName);\r
if (service == null) {\r
- tester.writer.println("Service '" + serviceName\r
- + "' is not supported. Valid values are: "\r
+ tester.writer.println("Service '" + serviceName + "' is not supported. Valid values are: "\r
+ Arrays.toString(Services.values()));\r
tester.writer.println();\r
printUsage();\r
System.exit(0);\r
}\r
\r
- tester.writer\r
- .println("<ServiceName> is not provided checking all known services...");\r
+ tester.writer.println("<ServiceName> is not provided checking all known services...");\r
\r
for (Services serv : Services.values()) {\r
tester.writer.println();\r
WebServiceException {\r
JABAService ws = Jws2Client.connect(hostname, service);\r
if (ws == null) {\r
- writer.println("Cannot estabilish the connection to host "\r
- + hostname + " with service " + service.toString());\r
+ String line = "Cannot estabilish the connection to host " + hostname + " with service ";\r
+ writer.println(line + service.toString());\r
return false;\r
}\r
boolean succeed = false;\r
\r
private void reportResults(Services serv, boolean succeed) {\r
if (succeed) {\r
- writer.println("Check is completed. The Service " + serv\r
- + " IS WORKING\n");\r
+ writer.println("Check is completed. The Service " + serv + " IS WORKING\n");\r
} else {\r
- writer.println("Check is aborted. The Service " + serv\r
- + " HAS SOME PROBLEMS\n");\r
+ writer.println("Check is aborted. The Service " + serv + " HAS SOME PROBLEMS\n");\r
}\r
}\r
}\r