Roll back some changes in WSDL of RegistryWS for some time: restore back compatibility
[jabaws.git] / webservices / compbio / data / msa / RegistryWS.java
1 /* Copyright (c) 2011 Peter Troshin\r
2  *  \r
3  *  JAva Bioinformatics Analysis Web Services (JABAWS) @version: 2.0     \r
4  * \r
5  *  This library is free software; you can redistribute it and/or modify it under the terms of the\r
6  *  Apache License version 2 as published by the Apache Software Foundation\r
7  * \r
8  *  This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without\r
9  *  even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Apache \r
10  *  License for more details.\r
11  * \r
12  *  A copy of the license is in apache_license.txt. It is also available here:\r
13  * @see: http://www.apache.org/licenses/LICENSE-2.0.txt\r
14  * \r
15  * Any republication or derived work distributed in source code form\r
16  * must include this copyright and license notice.\r
17  */\r
18 package compbio.data.msa;\r
19 \r
20 import java.util.Date;\r
21 import java.util.Set;\r
22 \r
23 import javax.jws.WebService;\r
24 \r
25 import compbio.ws.client.Services;\r
26 \r
27 /**\r
28  * JABAWS services registry\r
29  * \r
30  * @author pvtroshin\r
31  * @version 1.0 June 2011\r
32  */\r
33 @WebService(targetNamespace = JABAService.V2_SERVICE_NAMESPACE)\r
34 public interface RegistryWS extends JABAService {\r
35 \r
36         /**\r
37          * List of services that are functioning on the server. This function\r
38          * returns the results of testing performed some time ago by\r
39          * {@link #testAllServices} or {@link #testService(Services)} methods. The\r
40          * time of last check can be obtained from\r
41          * {@link #getLastTestedOn(Services)} method\r
42          * \r
43          * @return the Set of Services which are functioning on the server\r
44          * @see #testAllServices()\r
45          */\r
46         Set<Services> getSupportedServices();\r
47         /**\r
48          * List of services that are functioning on the server. This function\r
49          * returns the results of testing performed some time ago by\r
50          * {@link #testAllServices} or {@link #testService(Services)} methods. The\r
51          * time of last check can be obtained from\r
52          * {@link #getLastTestedOn(Services)} method\r
53          * \r
54          * @return the Set of Services which are functioning on the server\r
55          * @see #testAllServices()\r
56          */\r
57         //Set<Services> getNonoperatedServices();       \r
58         /**\r
59          * Number of seconds since the last test. Returns 0 if the service was not\r
60          * tested or tested less then a one second ago.\r
61          * \r
62          * @param service\r
63          * @return when last time tested\r
64          */\r
65         int getLastTested(Services service);\r
66         /**\r
67          * The date and time the service has been verified to work last time\r
68          * \r
69          * @param service\r
70          * @return the Date and time on which the service was last tested\r
71          */\r
72         Date getLastTestedOn(Services service);\r
73         /**\r
74          * Test all JABAWS services on the server\r
75          * \r
76          * @return the test log\r
77          */\r
78         String testAllServices();\r
79         /**\r
80          * Test a particular service\r
81          * \r
82          * @param service\r
83          * @return the testing log\r
84          */\r
85         String testService(Services service);\r
86         /**\r
87          * Check whether a particular web service is working on this server\r
88          * \r
89          * @param service\r
90          * @return true if the service was functioning in time of last testing.\r
91          */\r
92         boolean isOperating(Services service);\r
93 \r
94         /**\r
95          * Gives the description of the service.\r
96          * \r
97          * @param service\r
98          * @return String, plain text or html formatted piece, but NOT a full html\r
99          *         document\r
100          */\r
101         String getServiceDescription(Services service);\r
102 \r
103         /**\r
104          * Gets the list of services per category. ServiceClassifier has the method\r
105          * that returns Map<Category, Set<Services>>\r
106          * \r
107          * @return ServiceClassifier the object to represent relation between\r
108          *         Services and Categories\r
109          */\r
110         Set<Category> getServiceCategories();\r
111 \r
112 }\r