Uniprot may have several accession ids
authoramwaterhouse <Andrew Waterhouse>
Fri, 23 Jun 2006 16:25:17 +0000 (16:25 +0000)
committeramwaterhouse <Andrew Waterhouse>
Fri, 23 Jun 2006 16:25:17 +0000 (16:25 +0000)
src/jalview/io/DBRefFetcher.java

index 6e44910..c11910b 100644 (file)
@@ -147,8 +147,12 @@ public class DBRefFetcher implements Runnable
                    ids.get(i).toString().lastIndexOf("|") + 1));\r
                uniprotFlag = true;\r
              }\r
-             remainingIds.append(ids.get(i) + ";");\r
+             else\r
+               remainingIds.append(ids.get(i));\r
+\r
+             remainingIds.append(";");\r
            }\r
+\r
           EBIFetchClient ebi = new EBIFetchClient();\r
           File file = ebi.fetchDataAsFile(remainingIds.toString(),\r
                                           "xml", "raw");\r
@@ -244,7 +248,11 @@ public class DBRefFetcher implements Runnable
 \r
       else  if (sequence == null && uniprotFlag)\r
       {\r
-          sequence = dataset.findName("UniProt/Swiss-Prot|"+entry.getAccession().elementAt(0)+"|"+idmatch);\r
+          StringBuffer upid = new StringBuffer("UniProt/Swiss-Prot|");\r
+          for(int u=0; u<entry.getAccession().size(); u++)\r
+            upid.append(entry.getAccession().elementAt(u)+"|");\r
+\r
+          sequence = dataset.findName(upid+idmatch);\r
           ids.remove(idmatch);\r
       }\r
 \r