- ssm.setProgressBar(null);
- ssm.setProgressBar("Fetching Database refs..");
- new DBRefFetcher(sequences).fetchDBRefs(true);
- break;
+ if (seq.getDBRefs() == null)
+ {
+ seqsWithoutSourceDBRef.add(seq);
+ continue;
+ }
+ for (DBRefEntry dbRef : seq.getDBRefs())
+ {
+ if (dbRef.getSource().equalsIgnoreCase("uniprot"))
+ {
+ seq.setSourceDBRef(dbRef);
+ break;
+ }
+ }
+ for (DBRefEntry dbRef : seq.getDBRefs())
+ {
+ if (dbRef.getSource().equalsIgnoreCase("pdb"))
+ {
+ seq.setSourceDBRef(dbRef);
+ break;
+ }
+ }
+ if (seq.getSourceDBRef() == null)
+ {
+ seqsWithoutSourceDBRef.add(seq);
+ }
+ }
+ }
+ if (!seqsWithoutSourceDBRef.isEmpty())
+ {
+ int y = seqsWithoutSourceDBRef.size();
+ ssm.setProgressBar(null);
+ ssm.setProgressBar(">>>>> Fetching Database refs for " + y
+ + " sequence" + (y > 1 ? "s" : "")
+ + " with no valid uniprot or pdb ref for SIFTS mapping");
+ System.out.println(">>>>> Fetching Database refs for " + y
+ + " sequence" + (y > 1 ? "s" : "")
+ + " with no valid uniprot or pdb ref for SIFTS mapping");
+ SequenceI[] seqWithoutSrcDBRef = new SequenceI[y];
+ int x = 0;
+ for (SequenceI fSeq : seqsWithoutSourceDBRef)
+ {
+ seqWithoutSrcDBRef[x++] = fSeq;