- public void FindUniprotIDFromUnknownSequence (String id, String s)\r
- {\r
- HashMap params = new HashMap();\r
- params.put("database", "uniprot");\r
- params.put("sensitivity","low");\r
- params.put("sort","totalscore");\r
- params.put("matrix","pam10");\r
- params.put("program","blastp");\r
- params.put("alignments","5");\r
- params.put("outformat","xml");\r
- byte[] sequence = s.getBytes();\r
-\r
- try {\r
- Call call = (Call) new Service().createCall();\r
- call.setTargetEndpointAddress (new java.net.URL("http://www.ebi.ac.uk/cgi-bin/webservices/WSWUBlast"));\r
- call.setOperationName(new QName("WSWUBlast", "doWUBlast"));\r
-\r
- String result = (String) call.invoke(new Object[] {params,sequence});\r
- parseResult(id, result);\r
- }\r
- catch (Exception exp) {\r
- System.err.println ("ERROR:\n" + exp.toString());\r
- exp.printStackTrace();\r
+ while (!jobComplete)\r
+ {\r
+ try\r
+ {\r
+ Call call = (Call)new Service().createCall();\r
+ call.setTargetEndpointAddress(new java.net.URL(\r
+ "http://www.ebi.ac.uk/cgi-bin/webservices/WSWUBlast"));\r
+ call.setOperationName(new QName("WSWUBlast", "polljob"));\r
+ String result = (String) call.invoke(new Object[]\r
+ {jobid, "xml"});\r
+ if(result.indexOf("JOB PENDING")==-1 && result.indexOf("JOB RUNNING")==-1)\r
+ {\r
+ parseResult(seqid, result);\r
+ jobComplete = true;\r
+ jobsRunning --;\r
+ }\r
+ Thread.sleep(5000);\r
+ System.out.println("I'm alive "+seqid+" "+jobid);\r