Merge branch 'develop' into features/JAL-2094_colourInterface
[jalview.git] / src / jalview / ext / ensembl / EnsemblSymbol.java
index 5b3baa1..b8c8c54 100644 (file)
@@ -13,9 +13,28 @@ import org.json.simple.JSONObject;
 import org.json.simple.parser.JSONParser;
 import org.json.simple.parser.ParseException;
 
+/**
+ * A client for the Ensembl xrefs/symbol REST service;
+ * 
+ * @see http://rest.ensembl.org/documentation/info/xref_external
+ * @author gmcarstairs
+ *
+ */
 public class EnsemblSymbol extends EnsemblXref
 {
   /**
+   * Constructor given the target domain to fetch data from
+   * 
+   * @param domain
+   * @param dbName
+   * @param dbVersion
+   */
+  public EnsemblSymbol(String domain, String dbName, String dbVersion)
+  {
+    super(domain, dbName, dbVersion);
+  }
+
+  /**
    * Returns the first "id" value in gene identifier format from the JSON
    * response, or null if none found
    * 
@@ -23,7 +42,7 @@ public class EnsemblSymbol extends EnsemblXref
    * @return
    * @throws IOException
    */
-  protected String parseResponse(BufferedReader br)
+  protected String parseSymbolResponse(BufferedReader br)
           throws IOException
   {
     JSONParser jp = new JSONParser();
@@ -51,7 +70,7 @@ public class EnsemblSymbol extends EnsemblXref
 
   protected URL getUrl(String id, Species species)
   {
-    String url = ENSEMBL_REST + "/xrefs/symbol/" + species.toString() + "/"
+    String url = getDomain() + "/xrefs/symbol/" + species.toString() + "/"
             + id
             + "?content-type=application/json";
     try
@@ -91,7 +110,7 @@ public class EnsemblSymbol extends EnsemblXref
             {
               br = getHttpResponse(url, ids);
             }
-            String geneId = parseResponse(br);
+            String geneId = parseSymbolResponse(br);
             if (geneId != null)
             {
               result.add(geneId);