13b11b3f74f3e0d3f8a0ce2c615e707b968c45aa
[proteocache.git] / Jpred.java
1 package compbio.ws.jpred;
2
3 import javax.jws.WebMethod;
4 import javax.jws.WebParam;
5 import javax.jws.WebService;
6
7 /**
8  * Jpred interface of the corresponding web serice in ProteoCache
9  * 
10  * @author Alexander Sherstnev
11  * @author Natasha Sherstneva
12  * 
13  * @version 1.0
14  * @since Jan 2014
15  */
16 @WebService(targetNamespace = "http://server.proteocache.ws")
17 public interface Jpred {
18
19         /**
20          * Returns a number of jobs xecuted for a protein with a program of a
21          * version
22          * 
23          * @param sequence
24          *            the protein sequence
25          * @param program
26          *            the program title
27          * @param version
28          *            the program version
29          * @return a number of jobs executed for the protein
30          */
31         @WebMethod
32         public int findSequence(@WebParam(name = "sequence") String sequence, @WebParam(name = "program") String program,
33                         @WebParam(name = "version") String version);
34
35         /**
36          * Returns a job ID executed for a protein with a program of a version if
37          * the job archive file is available, otherwise returns empty string
38          * 
39          * @param sequence
40          *            the protein sequence
41          * @param program
42          *            the program title
43          * @param version
44          *            the program version
45          * @return job ID
46          */
47         @WebMethod
48         public String findJobForSequence(@WebParam(name = "sequence") String sequence, @WebParam(name = "program") String program,
49                         @WebParam(name = "version") String version);
50
51         /**
52          * Returns a relative web link to the job archive file for a ProteoCache
53          * job, if the file is not available null is returned
54          * 
55          * @param jobid
56          *            the job ID
57          * @return the job archive file web link or null
58          */
59         @WebMethod
60         public String getArchive(@WebParam(name = "job") String jobid);
61
62         /**
63          * Checks whether a job with a given Job ID is kept in ProteoCache
64          * 
65          * @param jobid
66          *            the job ID
67          * @return 1 if the job exists, 0 - otherwise
68          */
69         @WebMethod
70         public int jobExists(@WebParam(name = "job") String jobid);
71 }