JAL-2679 use object_type=Transcript for lookup of Parent for Protein
[jalview.git] / src / jalview / ext / ensembl / EnsemblSymbol.java
index 671bfec..e3b6c93 100644 (file)
@@ -42,6 +42,8 @@ import org.json.simple.parser.ParseException;
  */
 public class EnsemblSymbol extends EnsemblXref
 {
+  private static final String GENE = "gene";
+  private static final String TYPE = "type";
   /**
    * Constructor given the target domain to fetch data from
    * 
@@ -73,9 +75,9 @@ public class EnsemblSymbol extends EnsemblXref
       while (rvals.hasNext())
       {
         JSONObject val = (JSONObject) rvals.next();
-        String id = val.get("id").toString();
-        String type = val.get("type").toString();
-        if (id != null && "gene".equals(type))
+        String id = val.get(ID).toString();
+        String type = val.get(TYPE).toString();
+        if (id != null && GENE.equals(type))
         {
           result = id;
           break;
@@ -105,7 +107,7 @@ public class EnsemblSymbol extends EnsemblXref
     StringBuilder sb = new StringBuilder();
     sb.append(getDomain()).append("/xrefs/symbol/")
             .append(species.toString()).append("/").append(id)
-            .append("?content-type=application/json");
+            .append(CONTENT_TYPE_JSON);
     for (String t : type)
     {
       sb.append("&object_type=").append(t);
@@ -139,21 +141,19 @@ public class EnsemblSymbol extends EnsemblXref
     {
       for (String query : queries)
       {
-        for (Species taxon : Species.values())
+        for (Species taxon : Species.getModelOrganisms())
         {
-          if (taxon.isModelOrganism())
+          URL url = getUrl(query, taxon, GENE);
+          if (url != null)
           {
-            URL url = getUrl(query, taxon, "gene");
-            if (url != null)
+            br = getHttpResponse(url, ids);
+            if (br != null)
             {
-              br = getHttpResponse(url, ids);
-              if (br != null)
+              String geneId = parseSymbolResponse(br);
+              System.out.println(url + " returned " + geneId);
+              if (geneId != null && !result.contains(geneId))
               {
-                String geneId = parseSymbolResponse(br);
-                if (geneId != null && !result.contains(geneId))
-                {
-                  result.add(geneId);
-                }
+                result.add(geneId);
               }
             }
           }