wsdbfetch parameter change again (uniprotkb is dbname for uniprot)
[jalview.git] / src / jalview / ws / dbsources / Uniprot.java
index ab0b10c..814c534 100644 (file)
@@ -116,8 +116,10 @@ public class Uniprot extends DbSourceProxyImpl implements DbSourceProxy
       Unmarshaller unmar = new Unmarshaller(uni);
       unmar.setIgnoreExtraElements(true);
       unmar.setMapping(map);
-
-      uni = (UniprotFile) unmar.unmarshal(new FileReader(file));
+      if (file!=null)
+      {
+        uni = (UniprotFile) unmar.unmarshal(new FileReader(file));
+      }
     } catch (Exception e)
     {
       System.out.println("Error getUniprotEntries() " + e);
@@ -136,11 +138,13 @@ public class Uniprot extends DbSourceProxyImpl implements DbSourceProxy
     startQuery();
     try
     {
+      queries = queries.toUpperCase().replaceAll("(UNIPROT\\|?|UNIPROT_|UNIREF\\d+_|UNIREF\\d+\\|?)","");
       Alignment al = null;
       ebi = new EBIFetchClient();
       StringBuffer result = new StringBuffer();
       // uniprotxml parameter required since december 2007
-      File file = ebi.fetchDataAsFile("uniprot:" + queries, "uniprotxml",
+      // uniprotkb dbname changed introduced december 2008
+      File file = ebi.fetchDataAsFile("uniprotkb:" + queries, "uniprotxml",
               null);
       Vector entries = getUniprotEntries(file);