+ if (seq.getSequence().length()>ln)
+ {
+ ln = seq.getSequence().length();
+ }
+ }
+ }
+ if (alignedSeqs && submitGaps)
+ {
+ // try real hard to return something submittable
+ // TODO: some of AAcons measures need a minimum of two or three amino acids at each position, and aacons doesn't gracefully degrade.
+ for (int p=0; p<seqs.size();p++)
+ {
+ FastaSequence sq=seqs.get(p);
+ int l=sq.getSequence().length();
+ if (l<ln)
+ {
+ char[] padded=new char[ln];
+ System.arraycopy(sq.getSequence().toCharArray(),0,padded,0,sq.getSequence().length());
+ while (l<ln)
+ {
+ padded[l++]='-';
+ }
+ seqs.set(p, new compbio.data.sequence.FastaSequence(sq.getId(), new String(padded)));
+ }