import jalview.ws.seqfetcher.ASequenceFetcher;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
/**
xrfs = t;
try
{
- retrieved = sftch.getSequences(xrfs, !dna);
+ retrieved = sftch.getSequences(Arrays.asList(xrfs), !dna);
// problem here is we don't know which of xrfs resulted in which
// retrieved element
} catch (Exception e)
// look for direct or indirect references in common
DBRefEntry[] poss = nxt.getDBRefs();
- DBRefEntry[] cands = null;
+ List<DBRefEntry> cands = null;
/*
* TODO does this make any sense?
* if 'direct', search the dbrefs for xrf
poss = DBRefUtils.selectDbRefs(!dna, poss);
cands = DBRefUtils.searchRefs(poss, xrf);
}
- if (cands != null)
+ if (!cands.isEmpty())
{
if (!rseqs.contains(nxt))
{
found = true;
rseqs.add(nxt);
- boolean foundmap = cf != null;
- // don't search if we aren't given a codon map object
- for (int r = 0; foundmap && r < cands.length; r++)
+ if (cf != null)
{
- if (cands[r].hasMap())
+ // don't search if we aren't given a codon map object
+ for (DBRefEntry candidate : cands)
{
- Mapping mapping = cands[r].getMap();
- MapList map = mapping.getMap();
- if (mapping.getTo() != null
- && map.getFromRatio() != map.getToRatio())
+ Mapping mapping = candidate.getMap();
+ if (mapping != null)
{
- // get sense of map correct for adding to product
- // alignment.
- if (dna)
+ MapList map = mapping.getMap();
+ if (mapping.getTo() != null
+ && map.getFromRatio() != map.getToRatio())
{
- // map is from dna seq to a protein product
- cf.addMap(sequenceI, nxt, map);
- }
- else
- {
- // map should be from protein seq to its coding dna
- cf.addMap(nxt, sequenceI, map.getInverse());
+ // get sense of map correct for adding to product
+ // alignment.
+ if (dna)
+ {
+ // map is from dna seq to a protein product
+ cf.addMap(sequenceI, nxt, map);
+ }
+ else
+ {
+ // map should be from protein seq to its coding dna
+ cf.addMap(nxt, sequenceI, map.getInverse());
+ }
}
}
}