JAL-2009 Codes to enable storing inserted residues as features to their base residue...
[jalview.git] / src / jalview / ws / seqfetcher / ASequenceFetcher.java
index afdb516..0fe7275 100644 (file)
@@ -1,6 +1,6 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
- * Copyright (C) 2014 The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
@@ -24,6 +24,7 @@ import jalview.datamodel.AlignmentI;
 import jalview.datamodel.DBRefEntry;
 import jalview.datamodel.SequenceI;
 import jalview.util.DBRefUtils;
+import jalview.util.MessageManager;
 
 import java.util.ArrayList;
 import java.util.Enumeration;
@@ -57,7 +58,9 @@ public class ASequenceFetcher
   public String[] getSupportedDb()
   {
     if (FETCHABLEDBS == null)
+    {
       return null;
+    }
     String[] sf = new String[FETCHABLEDBS.size()];
     Enumeration e = FETCHABLEDBS.keys();
     int i = 0;
@@ -76,7 +79,9 @@ public class ASequenceFetcher
     {
       String db = (String) e.nextElement();
       if (source.compareToIgnoreCase(db) == 0)
+      {
         return true;
+      }
     }
     jalview.bin.Cache.log.warn("isFetchable doesn't know about '" + source
             + "'");
@@ -166,7 +171,7 @@ public class ASequenceFetcher
                 {
                   rseqs.addElement(seqs[is]);
                   DBRefEntry[] frefs = DBRefUtils.searchRefs(seqs[is]
-                          .getDBRef(), new DBRefEntry(db, null, null));
+                          .getDBRefs(), new DBRefEntry(db, null, null));
                   if (frefs != null)
                   {
                     for (DBRefEntry dbr : frefs)
@@ -197,7 +202,9 @@ public class ASequenceFetcher
                    */
                   System.out.println(hdr);
                   if (rrb != null)
+                  {
                     System.out.println(rrb);
+                  }
                   System.out.println("# end of " + hdr);
                 }
 
@@ -302,31 +309,26 @@ public class ASequenceFetcher
    * @param dbSourceProxy
    *          reference for class implementing
    *          jalview.ws.seqfetcher.DbSourceProxy
-   * @throws java.lang.IllegalArgumentException
-   *           if class does not implement jalview.ws.seqfetcher.DbSourceProxy
    */
-  protected void addDBRefSourceImpl(Class dbSourceProxy)
+  protected void addDBRefSourceImpl(
+          Class<? extends DbSourceProxy> dbSourceProxy)
           throws java.lang.IllegalArgumentException
   {
     DbSourceProxy proxy = null;
     try
     {
-      Object proxyObj = dbSourceProxy.getConstructor(null)
-              .newInstance(null);
-      if (!DbSourceProxy.class.isInstance(proxyObj))
-      {
-        throw new IllegalArgumentException(
-                dbSourceProxy.toString()
-                        + " does not implement the jalview.ws.seqfetcher.DbSourceProxy");
-      }
-      proxy = (DbSourceProxy) proxyObj;
+      DbSourceProxy proxyObj = dbSourceProxy.getConstructor().newInstance();
+      proxy = proxyObj;
     } catch (IllegalArgumentException e)
     {
       throw e;
     } catch (Exception e)
     {
       // Serious problems if this happens.
-      throw new Error("DBRefSource Implementation Exception", e);
+      throw new Error(
+              MessageManager
+                      .getString("error.dbrefsource_implementation_exception"),
+              e);
     }
     addDbRefSourceImpl(proxy);
   }
@@ -395,8 +397,10 @@ public class ASequenceFetcher
     if (!jalview.ws.seqfetcher.DbSourceProxy.class.isAssignableFrom(class1))
     {
       throw new Error(
-              "Implmentation Error - getDbInstances must be given a class that implements jalview.ws.seqfetcher.DbSourceProxy (was given '"
-                      + class1 + "')");
+              MessageManager
+                      .formatMessage(
+                              "error.implementation_error_dbinstance_must_implement_interface",
+                              new String[] { class1.toString() }));
     }
     if (FETCHABLEDBS == null)
     {
@@ -427,6 +431,7 @@ public class ASequenceFetcher
   {
     ArrayList<DbSourceProxy> prlist = new ArrayList<DbSourceProxy>();
     for (String fetchable : getSupportedDb())
+    {
       for (DbSourceProxy pr : getSourceProxy(fetchable))
       {
         if (class1.isInstance(pr))
@@ -434,6 +439,7 @@ public class ASequenceFetcher
           prlist.add(pr);
         }
       }
+    }
     if (prlist.size() == 0)
     {
       return null;