package jalview.ws.slivkaws; import java.io.IOError; import java.io.IOException; import java.util.List; import jalview.datamodel.AlignmentI; import jalview.datamodel.SequenceI; import jalview.ws.api.JPredMutlipleAlignmentServiceI; import jalview.ws.api.JobId; import uk.ac.dundee.compbio.slivkaclient.RemoteFile; import uk.ac.dundee.compbio.slivkaclient.SlivkaClient; import uk.ac.dundee.compbio.slivkaclient.SlivkaService; public class SlivkaJPredServiceInstance extends SlivkaWSInstance implements JPredMutlipleAlignmentServiceI { public SlivkaJPredServiceInstance(SlivkaClient client, SlivkaService service, String action) { super(client, service, action); style = ServiceClient.JPREDWSCLIENT; } @Override public JobId align(List sequences) throws Throwable { return super.submit(sequences, null, null); } @Override public AlignmentI getResult(JobId jobId) throws Exception { List files; try { files = client.getJobResults(jobId.getJobId()); for (RemoteFile f : files) { if (f.getMimeType().equals("application/clustal") || f.getMimeType().equals("application/fasta")) { return readAlignment(f); } } } catch (IOException e) { throw new IOError(e); } return null; } }