}
return allfound;
}
-
- public SequenceI[] clustalW(SequenceI[] sequences)
+ public SequenceI[] clustalW(SequenceI[] sequences) {
+ // Does the same as below but keeps initial sequence order.
+ return (this.clustalW(sequences, true));
+ }
+ public SequenceI[] clustalW(SequenceI[] sequences, boolean PreserveOrder)
{
// Simplest client call - with gumph from jemboss.server.TestPrivateServer
for (int i=0; i<sequences.length; i++) {
myseq[i] = new Sequence(sequences[i]);
}
- // Uniqueify, and
+ // Uniqueify, and
Hashtable namemap = uniquify(myseq);
// Load sequence file into hash
-
+
filesToMove.put("jalseqs.fasta",
- jalview.io.FastaFile.print(myseq,124,false).getBytes());
+ jalview.io.FastaFile.print(myseq,124,false, false).getBytes());
if(vamsas_server.getUseAuth() == true)
if(vamsas_server.getServiceUserName() == null)
String alfile = h.get(thiskey).toString();
String format = IdentifyFile.Identify(alfile, "Paste");
SequenceI[] alignment = null;
-
+
if (FormatProperties.contains(format))
alignment = FormatAdapter.read(alfile, "Paste", format);
else
System.out.println("jalview.Jemboss: Couldn't read response:\n"
+ alfile + "\n---EOF\n");
else {
+ if (PreserveOrder) {
+ float[] ids = new float[alignment.length];
+ for (int i=0; i<alignment.length; i++)
+ ids[i] = (new Float(alignment[i].getName().substring(8))).floatValue();
+ jalview.util.QuickSort.sort(ids, alignment);
+ }
if (!deuniquify(namemap, alignment)) {
System.out.println("jalview.Jemboss: Warning: Some of the "
+"original sequence names have not been recovered!\n");