X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws2%2FWebServiceI.java;h=cdb201e88cb83e6e48b29fae1a1fcd2ac7ae542a;hb=2bbba7f7426314bfd6a1f206861542244b5f511a;hp=a09233fa4bb9e1cdac1fcb7e4bf925edf1b815e4;hpb=158e0595615ae4bfb13554f41f03b570642f6bb2;p=jalview.git diff --git a/src/jalview/ws2/WebServiceI.java b/src/jalview/ws2/WebServiceI.java index a09233f..cdb201e 100755 --- a/src/jalview/ws2/WebServiceI.java +++ b/src/jalview/ws2/WebServiceI.java @@ -20,21 +20,75 @@ import jalview.ws2.operations.Operation; */ public interface WebServiceI { + /** + * Get the hostname/url of the remote server which is supplying the service. + * + * @return host name + */ public String getHostName(); + /** + * Get the short name of the service supplier. + * + * @return short service supplier name + */ public String getProviderName(); + /** + * Get the name of the service + * + * @return service name + */ String getName(); + /** + * Get the description of the service. + * + * @return service description + */ String getDescription(); + /** + * Return whether the service provider user-adjustable parameters. + * + * @return whether service has parameters + */ boolean hasParameters(); + /** + * Get a {@link ParamDatastoreI} object containing service parameters and + * presets. + * + * @return service parameters and presets + */ public ParamDatastoreI getParamStore(); + /** + * Submit new job to the service with the supplied input sequences and + * arguments. Implementations should perform all data parsing necessary for + * the job submission and start a new job on the remote server. + * + * @param sequences + * input sequences + * @param args + * user provided arguments + * @return job id + * @throws IOException + * submission failed due to a connection error + */ public String submit(List sequences, List args) - throws IOException; + throws IOException; + /** + * Update the progress of the running job according to the state reported by + * the server. Implementations should fetch the current job status from the + * server and update status and log messages on the provided job object. + * + * @param job + * job to update + * @throws IOException + * server error occurred + */ public void updateProgress(WSJob job) throws IOException; public void cancel(WSJob job) throws IOException;