Merge commit 'alpha/update_2_12_for_2_11_2_series_merge^2' into HEAD
[jalview.git] / src / jalview / ws / dbsources / EmblFlatfileSource.java
index 2353f22..6694a52 100644 (file)
@@ -1,5 +1,7 @@
 package jalview.ws.dbsources;
 
+import java.util.Locale;
+
 import java.io.File;
 import java.io.IOException;
 
@@ -22,7 +24,7 @@ import jalview.ws.ebi.EBIFetchClient;
  */
 public abstract class EmblFlatfileSource extends EbiFileRetrievedProxy
 {
-  private static final Regex ACCESSION_REGEX = new Regex("^[A-Z]+[0-9]+");
+  private static final Regex ACCESSION_REGEX = null;
 
   @Override
   public String getDbVersion()
@@ -39,6 +41,10 @@ public abstract class EmblFlatfileSource extends EbiFileRetrievedProxy
   @Override
   public Regex getAccessionValidator()
   {
+    if (ACCESSION_REGEX == null)
+    {
+      ACCESSION_REGEX = Platform.newRegex("^[A-Z]+[0-9]+");
+    }
     return ACCESSION_REGEX;
   }
 
@@ -73,13 +79,13 @@ public abstract class EmblFlatfileSource extends EbiFileRetrievedProxy
     try
     {
       reply = dbFetch.fetchDataAsFile(
-              dbName.toLowerCase() + ":" + query.trim(), null, "txt");
+              dbName.toLowerCase(Locale.ROOT) + ":" + query.trim(), null, "gz");
     } catch (Exception e)
     {
       stopQuery();
       throw new Exception(
-              String.format("EBI EMBL XML retrieval failed for %s:%s",
-                      dbName.toLowerCase(), query.trim()),
+              String.format("EBI EMBL retrieval failed for %s:%s",
+                      dbName.toLowerCase(Locale.ROOT), query.trim()),
               e);
     }
     return getEmblSequenceRecords(dbName, query, reply);
@@ -95,7 +101,6 @@ public abstract class EmblFlatfileSource extends EbiFileRetrievedProxy
       file = reply.getAbsolutePath();
       FileParse fp = new FileParse(file, DataSourceType.FILE);
       EmblFlatFile emblParser = new EmblFlatFile(fp, getDbSource());
-      emblParser.parse();
       SequenceI[] seqs = emblParser.getSeqsAsArray();
       if (seqs.length > 0)
       {
@@ -112,4 +117,10 @@ public abstract class EmblFlatfileSource extends EbiFileRetrievedProxy
     stopQuery();
     return al;
   }
+
+  @Override
+  public boolean isDnaCoding()
+  {
+    return true;
+  }
 }