package jalview.ws.slivkaws;
+
import jalview.datamodel.AlignmentI;
import jalview.datamodel.SequenceI;
+import jalview.io.DataSourceType;
+import jalview.io.FileFormat;
+import jalview.io.FormatAdapter;
import jalview.ws.api.JobId;
import jalview.ws.api.MultipleSequenceAlignmentI;
import jalview.ws.params.ArgumentI;
import jalview.ws.params.InvalidArgumentException;
import jalview.ws.params.WsParamSetI;
-
import java.io.IOError;
import java.io.IOException;
import java.rmi.ServerError;
+import java.util.Collection;
import java.util.List;
import uk.ac.dundee.compbio.slivkaclient.RemoteFile;
@Override
public AlignmentI getAlignmentFor(JobId jobId) throws InvalidArgumentException, ServerError, IOError
{
+ Collection<RemoteFile> files;
try
{
- List<RemoteFile> files = client.getJobResults(jobId.getJobId());
+ var slivkaJob = client.getJob(jobId.getJobId());
+ files = slivkaJob.getResults();
for (RemoteFile f : files)
{
- var aln = readAlignment(f);
- if (aln != null)
+ if (f.getMediaType().equals("application/clustal"))
+ {
+ return new FormatAdapter().readFile(f.getContentUrl().toString(), DataSourceType.URL, FileFormat.Clustal);
+ }
+ else if (f.getMediaType().equals("application/fasta"))
{
- return aln;
+ return new FormatAdapter().readFile(f.getContentUrl().toString(), DataSourceType.URL, FileFormat.Fasta);
}
}
} catch (IOException e)