0f5cee868d73bfec6c9fa55978e2fafba4975cb1
[jalview.git] / src / jalview / ws / WSClient.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3  * Copyright (C) $$Year-Rel$$ The Jalview Authors
4  * 
5  * This file is part of Jalview.
6  * 
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3
10  * of the License, or (at your option) any later version.
11  *  
12  * Jalview is distributed in the hope that it will be useful, but 
13  * WITHOUT ANY WARRANTY; without even the implied warranty 
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15  * PURPOSE.  See the GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License
18  * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
19  * The Jalview Authors are detailed in the 'AUTHORS' file.
20  */
21 package jalview.ws;
22
23 import jalview.gui.WebserviceInfo;
24
25 public abstract class WSClient // implements WSMenuEntryProviderI
26 {
27   /**
28    * WSClient holds the basic attributes that are displayed to the user for all
29    * jalview web service clients
30    */
31   /**
32    * displayed name for this web service
33    */
34   protected String WebServiceName;
35
36   /**
37    * specific job title (e.g. 'ClustalW Alignment of Selection from Aligment
38    * from Cut and Paste input')
39    */
40   protected String WebServiceJobTitle;
41
42   /**
43    * String giving additional information such as method citations for this
44    * service
45    */
46   protected String WebServiceReference;
47
48   /**
49    * Service endpoint
50    */
51   protected String WsURL;
52
53   /**
54    * Web service information used to initialise the WSClient attributes
55    */
56   protected WebserviceInfo wsInfo;
57
58   /**
59    * total number of jobs managed by this web service client instance.
60    */
61   int jobsRunning = 0;
62
63   /**
64    * TODO: this is really service metadata, and should be moved elsewhere.
65    * mappings between abstract interface names and menu entries
66    */
67   protected java.util.Hashtable ServiceActions;
68   {
69     ServiceActions = new java.util.Hashtable();
70     ServiceActions.put("MsaWS", "Multiple Sequence Alignment");
71     ServiceActions.put("SecStrPred", "Secondary Structure Prediction");
72   };
73
74   public WSClient()
75   {
76   }
77 }