JAL-3438 spotless for 2.11.2.0
[jalview.git] / src / jalview / ext / ensembl / EnsemblSymbol.java
index 75598a0..ef79d72 100644 (file)
  */
 package jalview.ext.ensembl;
 
-import java.io.BufferedReader;
 import java.io.IOException;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
+import java.util.Map;
 
-import org.json.simple.JSONArray;
-import org.json.simple.JSONObject;
-import org.json.simple.parser.JSONParser;
 import org.json.simple.parser.ParseException;
 
 /**
@@ -43,8 +40,8 @@ import org.json.simple.parser.ParseException;
 public class EnsemblSymbol extends EnsemblXref
 {
   private static final String GENE = "gene";
+
   private static final String TYPE = "type";
-  private static final String ID = "id";
 
   /**
    * Constructor given the target domain to fetch data from
@@ -58,39 +55,18 @@ public class EnsemblSymbol extends EnsemblXref
     super(domain, dbName, dbVersion);
   }
 
-  /**
-   * Returns the first "id" value in gene identifier format from the JSON
-   * response, or null if none found
-   * 
-   * @param br
-   * @return
-   * @throws IOException
-   */
-  protected String parseSymbolResponse(BufferedReader br) throws IOException
-  {
-    JSONParser jp = new JSONParser();
-    String result = null;
-    try
-    {
-      JSONArray responses = (JSONArray) jp.parse(br);
-      Iterator rvals = responses.iterator();
-      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))
-        {
-          result = id;
-          break;
-        }
-      }
-    } catch (ParseException e)
-    {
-      // ignore
-    }
-    return result;
-  }
+  // /**
+  // * Returns the first "id" value in gene identifier format from the JSON
+  // * response, or null if none found
+  // *
+  // * @param br
+  // * @return
+  // * @throws IOException
+  // */
+  // @SuppressWarnings("unchecked")
+  // protected String parseSymbolResponse(BufferedReader br) throws IOException
+  // {
+  // }
 
   /**
    * Constructs the URL for the REST symbol endpoint
@@ -131,6 +107,7 @@ public class EnsemblSymbol extends EnsemblXref
    * @param identifier
    * @return
    */
+  @SuppressWarnings("unchecked")
   public List<String> getGeneIds(String identifier)
   {
     List<String> result = new ArrayList<String>();
@@ -138,44 +115,45 @@ public class EnsemblSymbol extends EnsemblXref
     ids.add(identifier);
 
     String[] queries = identifier.split(getAccessionSeparator());
-    BufferedReader br = null;
     try
     {
       for (String query : queries)
       {
         for (Species taxon : Species.getModelOrganisms())
         {
-          URL url = getUrl(query, taxon, GENE);
-          if (url != null)
+          String geneId = null;/// parseSymbolResponse(br);
+          try
           {
-            br = getHttpResponse(url, ids);
-            if (br != null)
+            Iterator<Object> rvals = (Iterator<Object>) getJSON(
+                    getUrl(query, taxon, GENE), ids, -1, MODE_ITERATOR,
+                    null);
+            if (rvals == null)
+              continue;
+            while (rvals.hasNext())
             {
-              String geneId = parseSymbolResponse(br);
-              System.out.println(url + " returned " + geneId);
-              if (geneId != null && !result.contains(geneId))
+              Map<String, Object> val = (Map<String, Object>) rvals.next();
+              String id = val.get(JSON_ID).toString();
+              String type = val.get(TYPE).toString();
+              if (id != null && GENE.equals(type))
               {
-                result.add(geneId);
+                geneId = id;
+                break;
               }
             }
+          } catch (ParseException e)
+          {
+            // ignore
+          }
+
+          if (geneId != null && !result.contains(geneId))
+          {
+            result.add(geneId);
           }
         }
       }
     } catch (IOException e)
     {
       // ignore
-    } finally
-    {
-      if (br != null)
-      {
-        try
-        {
-          br.close();
-        } catch (IOException e)
-        {
-          // ignore
-        }
-      }
     }
     return result;
   }