JAL-1521 updated xerces to 2.11 along with xml-apis
[jalview.git] / src / jalview / ws / jws2 / jabaws2 / Jws2InstanceFactory.java
1 package jalview.ws.jws2.jabaws2;
2
3 import java.util.HashMap;
4
5 import compbio.data.msa.JABAService;
6
7 import jalview.ws.jws2.AAConClient;
8 import jalview.ws.jws2.RNAalifoldClient;
9 import jalview.ws.uimodel.AlignAnalysisUIText;
10
11 public class Jws2InstanceFactory
12 {
13   private static HashMap<String, AlignAnalysisUIText> aaConGUI;
14   private static String category_rewrite(String cat_name)
15   {
16     return (cat_name != null && cat_name.equals("Prediction")) ? "Secondary Structure Prediction" : cat_name;
17   }
18   private static void init()
19   {
20     if (aaConGUI == null)
21     {
22       aaConGUI = new HashMap<String, AlignAnalysisUIText>();
23       aaConGUI.put(compbio.ws.client.Services.AAConWS.toString(),
24               AAConClient.getAlignAnalysisUITest());
25       aaConGUI.put(compbio.ws.client.Services.RNAalifoldWS.toString(),
26               RNAalifoldClient.getAlignAnalysisUITest());
27     }
28   }
29
30   /**
31    * construct a service instance and configure it with any additional
32    * properties needed so Jalview can access it correctly
33    * 
34    * @param jwsservers
35    * @param serviceType
36    * @param name
37    * @param description
38    * @param service
39    * @return
40    */
41   public static Jws2Instance newJws2Instance(String jwsservers,
42           String serviceType, String name, String description,
43           JABAService service)
44   {
45     init();
46     Jws2Instance svc = new Jws2Instance(jwsservers, serviceType, category_rewrite(name),
47             description, service);
48     
49     svc.aaui = aaConGUI.get(serviceType.toString());
50     return svc;
51   }
52
53 }