- FindUniprotIDFromUnknownSequence(id, sequence);\r
- }\r
- }\r
-\r
- 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
+ StringTokenizer st = new StringTokenizer(res, "\n");\r
+ String data;\r
+ String id2;\r
+ int maxFound = 90;\r
+ StringBuffer buffer = new StringBuffer("\n\n" + id1 + " :");\r
+\r
+ while (st.hasMoreTokens())\r
+ {\r
+ data = st.nextToken();\r
+\r
+ if (data.indexOf("database=\"uniprot\" id=") > -1)\r
+ {\r
+ int index = data.indexOf("database=\"uniprot\" id=") + 23;\r
+ id2 = data.substring(index, data.indexOf("\"", index));\r
+\r
+ while (data.indexOf("</alignment>") == -1)\r
+ {\r
+ data = st.nextToken();\r
+\r
+ if (data.indexOf("<identity>") > -1)\r
+ {\r
+ int value = Integer.parseInt(data.substring(data.indexOf(\r
+ "<identity>") + 10,\r
+ data.indexOf("</identity>")));\r
+\r
+ if (value >= maxFound)\r
+ {\r
+ maxFound = value;\r
+ buffer.append(" " + id2 + " " + value + "%; ");\r
+ }\r
+ }\r
+ }\r