package jalview.ws.slivkaws;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOError;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Arrays;
+import java.util.EnumMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import jalview.datamodel.AlignmentI;
import jalview.datamodel.SequenceI;
import jalview.gui.WebserviceInfo;
+import jalview.io.DataSourceType;
import jalview.io.FileFormat;
import jalview.io.FormatAdapter;
import jalview.ws.api.JalviewServiceEndpointProviderI;
import jalview.ws.params.WsParamSetI;
import javajs.http.ClientProtocolException;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOError;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Arrays;
import java.util.Collection;
-import java.util.EnumMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
import uk.ac.dundee.compbio.slivkaclient.Job;
import uk.ac.dundee.compbio.slivkaclient.JobRequest;
import uk.ac.dundee.compbio.slivkaclient.Parameter;
}
return store;
}
+
+ public static AlignmentI readAlignment(RemoteFile f) throws IOException
+ {
+ final var mimetype = f.getMediaType();
+ FileFormat format;
+ if (mimetype.equals("application/clustal"))
+ format = FileFormat.Clustal;
+ else if (mimetype.equals("application/fasta"))
+ format = FileFormat.Fasta;
+ else
+ return null;
+ return new FormatAdapter().readFile(f.getContentUrl().toString(),
+ DataSourceType.URL, format);
+ }
}