Clustal Omega web service wrapper and tester
[jabaws.git] / webservices / compbio / ws / client / Services.java
index bff43e3..0ddb1a8 100644 (file)
@@ -20,6 +20,7 @@ package compbio.ws.client;
 \r
 import java.io.File;\r
 import java.net.URL;\r
+import java.util.Set;\r
 \r
 import javax.xml.namespace.QName;\r
 import javax.xml.ws.Service;\r
@@ -32,7 +33,9 @@ import compbio.engine.client.Executable;
 import compbio.runner.conservation.AACon;\r
 import compbio.runner.disorder.Disembl;\r
 import compbio.runner.disorder.GlobPlot;\r
+import compbio.runner.disorder.IUPred;\r
 import compbio.runner.disorder.Jronn;\r
+import compbio.runner.msa.ClustalO;\r
 import compbio.runner.msa.ClustalW;\r
 import compbio.runner.msa.Mafft;\r
 import compbio.runner.msa.Muscle;\r
@@ -44,7 +47,7 @@ import compbio.runner.msa.Tcoffee;
  * \r
  */\r
 public enum Services {\r
-       MafftWS, MuscleWS, ClustalWS, TcoffeeWS, ProbconsWS, AAConWS, JronnWS, DisemblWS, GlobPlotWS;\r
+       MafftWS, MuscleWS, ClustalWS, ClustalOWS, TcoffeeWS, ProbconsWS, AAConWS, JronnWS, DisemblWS, GlobPlotWS, IUPredWS;\r
 \r
        public static Services getService(String servName) {\r
                servName = servName.trim().toLowerCase();\r
@@ -72,6 +75,8 @@ public enum Services {
                switch (this) {\r
                        case AAConWS :\r
                                return AACon.class;\r
+                       case ClustalOWS :\r
+                               return ClustalO.class;\r
                        case ClustalWS :\r
                                return ClustalW.class;\r
                        case MafftWS :\r
@@ -88,6 +93,8 @@ public enum Services {
                                return GlobPlot.class;\r
                        case JronnWS :\r
                                return Jronn.class;\r
+                       case IUPredWS :\r
+                               return IUPred.class;\r
                        default :\r
                                throw new RuntimeException(\r
                                                "Unknown web service implementation class for service: "\r
@@ -95,7 +102,8 @@ public enum Services {
                }\r
        }\r
 \r
-       public static Class<? extends Executable<?>> getRunnerByJobDirectory(File jobdir) {\r
+       public static Class<? extends Executable<?>> getRunnerByJobDirectory(\r
+                       File jobdir) {\r
                Services service = getServiceByRunnerName(getRunnerNameByJobDirectory(jobdir));\r
                return service.getServiceImpl();\r
        }\r
@@ -131,6 +139,19 @@ public enum Services {
                return Service.create(url, qname);\r
        }\r
 \r
+       public static String toString(Set<Services> services) {\r
+               if (services == null || services.isEmpty()) {\r
+                       return "";\r
+               }\r
+               String value = "";\r
+               String delim = ", ";\r
+               for (Services serv : services) {\r
+                       value += serv.toString() + delim;\r
+               }\r
+               value = value.substring(0, value.length() - delim.length());\r
+               return value;\r
+       }\r
+\r
        Class<? extends JABAService> getServiceType() {\r
                switch (this) {\r
                        // deliberate leaking\r
@@ -138,11 +159,12 @@ public enum Services {
                        case JronnWS :\r
                        case DisemblWS :\r
                        case GlobPlotWS :\r
-\r
+                       case IUPredWS :\r
                                return SequenceAnnotation.class;\r
 \r
                                // deliberate leaking\r
                        case ClustalWS :\r
+                       case ClustalOWS :\r
                        case MafftWS :\r
                        case MuscleWS :\r
                        case ProbconsWS :\r