JAL-3855 check if an alpha fold ID and retrieve using that source
[jalview.git] / src / jalview / gui / StructureViewerBase.java
index a0b199b..b349559 100644 (file)
@@ -63,6 +63,7 @@ import jalview.structure.StructureMapping;
 import jalview.structures.models.AAStructureBindingModel;
 import jalview.util.BrowserLauncher;
 import jalview.util.MessageManager;
+import jalview.ws.dbsources.EBIAlfaFold;
 import jalview.ws.dbsources.Pdb;
 
 /**
@@ -1121,6 +1122,7 @@ public abstract class StructureViewerBase extends GStructureViewer
   {
     String filePath = null;
     Pdb pdbclient = new Pdb();
+    EBIAlfaFold afclient =  new EBIAlfaFold();
     AlignmentI pdbseq = null;
     String pdbid = processingEntry.getId();
     long handle = System.currentTimeMillis()
@@ -1138,7 +1140,12 @@ public abstract class StructureViewerBase extends GStructureViewer
     // { pdbid }));
     try
     {
-      pdbseq = pdbclient.getSequenceRecords(pdbid);
+      if (afclient.isValidReference(pdbid))
+      {
+        pdbseq = afclient.getSequenceRecords(pdbid);
+      } else {
+        pdbseq = pdbclient.getSequenceRecords(pdbid);
+      }
     } catch (Exception e)
     {
       System.err.println(