import jalview.gui.IProgressIndicator;\r
import jalview.gui.OOMWarning;\r
\r
+import java.lang.reflect.Array;\r
import java.util.Enumeration;\r
import java.util.Hashtable;\r
import java.util.StringTokenizer;\r
// construct sequences from response if sequences are present, and do a transferReferences\r
// otherwise transfer non sequence x-references directly.\r
}\r
+ System.out.println("Validated ID against PICR... (for what its worth):"+token);\r
addSeqId(sequence, token);\r
queries.addElement(token.toUpperCase());\r
} else {\r
- System.out.println("Not querying source with token="+token+"\n");\r
- //addSeqId(sequence, token);\r
- //queries.addElement(token.toUpperCase());\r
+ //if ()\r
+ //System.out.println("Not querying source with token="+token+"\n");\r
+ addSeqId(sequence, token);\r
+ queries.addElement(token.toUpperCase());\r
}\r
}\r
}\r
{\r
return;\r
}\r
- SequenceI[] retrieved = retrievedAl.getSequencesArray();\r
+ SequenceI[] retrieved = recoverDbSequences(retrievedAl.getSequencesArray());\r
SequenceI sequence = null;\r
\r
// Vector entries = new Uniprot().getUniprotEntries(file);\r
}\r
}\r
}\r
+\r
+ /**\r
+ * loop thru and collect additional sequences in Map.\r
+ * @param sequencesArray\r
+ * @return\r
+ */\r
+ private SequenceI[] recoverDbSequences(SequenceI[] sequencesArray)\r
+ {\r
+ Vector nseq = new Vector();\r
+ for (int i=0;sequencesArray!=null && i<sequencesArray.length;i++)\r
+ {\r
+ nseq.addElement(sequencesArray[i]);\r
+ DBRefEntry dbr[] = sequencesArray[i].getDBRef();\r
+ jalview.datamodel.Mapping map = null;\r
+ for (int r=0;(dbr!=null) && r<dbr.length; r++) {\r
+ if ((map=dbr[r].getMap())!=null)\r
+ {\r
+ if (!nseq.contains(map.getTo()))\r
+ {\r
+ nseq.addElement(map.getTo());\r
+ }\r
+ }\r
+ }\r
+ }\r
+ if (nseq.size()>0) {\r
+ sequencesArray = new SequenceI[nseq.size()];\r
+ nseq.toArray(sequencesArray);\r
+ }\r
+ return sequencesArray;\r
+ }\r
}\r