+
+ void renameDuplicates(SequenceI[] seqs)
+ {
+ // rename duplicate sequences, hmmsearch fails db contains duplicates
+ for (int i = 0; i < seqs.length; i++)
+ {
+ boolean renamed = false;
+ for (int j = 0; j < seqs.length; j++)
+ {
+ renamed = true;
+ if (seqs[i].getName().equals(seqs[j].getName()) && i != j)
+ {
+ String range = "/" + seqs[j].getStart() + "-" + seqs[j].getEnd();
+ // setting sequence name to include range - to differentiate between
+ // sequences of the same name. Currently have to include the range twice
+ // because the range is removed (once) when setting the name
+ // TODO come up with a better way of doing this
+ seqs[j].setName(seqs[j].getName() + range + range);
+ }
+
+ }
+ if (renamed)
+ {
+ String range = "/" + seqs[i].getStart() + "-" + seqs[i].getEnd();
+ seqs[i].setName(seqs[i].getName() + range + range);
+ }
+ }
+ }
+