JWS-113 Commented Jpred entries in the datamodel, runner and webservices java source...
[jabaws.git] / webservices / compbio / ws / server / JpredWS.java
index 6eb20e7..382ef37 100644 (file)
  * must include this copyright and license notice.\r
  */\r
 \r
-package compbio.ws.server;\r
-\r
-import java.io.File;\r
-import java.util.List;\r
-\r
-import javax.jws.WebService;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import compbio.data.msa.JABAService;\r
-import compbio.data.msa.MsaWS;\r
-import compbio.data.sequence.Alignment;\r
-import compbio.data.sequence.JpredAlignment;\r
-import compbio.data.sequence.FastaSequence;\r
-import compbio.engine.AsyncExecutor;\r
-import compbio.engine.Configurator;\r
-import compbio.engine.client.ConfiguredExecutable;\r
-import compbio.engine.client.Executable;\r
-import compbio.engine.client.SkeletalExecutable;\r
-import compbio.engine.client.EngineUtil;\r
-import compbio.metadata.ChunkHolder;\r
-import compbio.metadata.JobStatus;\r
-import compbio.metadata.JobSubmissionException;\r
-import compbio.metadata.Limit;\r
-import compbio.metadata.LimitsManager;\r
-import compbio.metadata.Option;\r
-import compbio.metadata.Preset;\r
-import compbio.metadata.PresetManager;\r
-import compbio.metadata.ResultNotAvailableException;\r
-import compbio.metadata.RunnerConfig;\r
-import compbio.metadata.WrongParameterException;\r
-import compbio.runner.RunnerUtil;\r
-import compbio.runner.predictors.Jpred;\r
-\r
-@WebService(endpointInterface = "compbio.data.msa.MsaWS", targetNamespace = JABAService.SERVICE_NAMESPACE, serviceName = "JpredWS")\r
-public class JpredWS implements MsaWS<Jpred> {\r
-\r
-       private static Logger log = Logger.getLogger(JpredWS.class);\r
-\r
-       private static final RunnerConfig<Jpred> jpredOptions = RunnerUtil.getSupportedOptions(Jpred.class);\r
-       private static final PresetManager<Jpred> jpredPresets = RunnerUtil.getPresets(Jpred.class);\r
-       private static final LimitsManager<Jpred> limitMan = EngineUtil.getLimits(new Jpred().getType());\r
-\r
-       @Override\r
-       public String align(List<FastaSequence> sequences)\r
-                       throws JobSubmissionException {\r
-               WSUtil.validateFastaInput(sequences);\r
-               ConfiguredExecutable<Jpred> confClust = init(sequences);\r
-               return WSUtil.align(sequences, confClust, log, "align", getLimit(""));\r
-       }\r
-\r
-       ConfiguredExecutable<Jpred> init(List<FastaSequence> dataSet)\r
-                       throws JobSubmissionException {\r
-               Jpred jpred = new Jpred();\r
-               jpred.setInput(SkeletalExecutable.INPUT);\r
-               jpred.setOutput(SkeletalExecutable.OUTPUT);\r
-               jpred.setError(SkeletalExecutable.ERROR);\r
-               ConfiguredExecutable<Jpred> confJpred = Configurator.configureExecutable(jpred, dataSet);\r
-               // Set the number of threads for the cluster execution from conf file\r
-               if (confJpred.getExecProvider() == Executable.ExecProvider.Cluster) {\r
-                       int clusterCpuNum = SkeletalExecutable.getClusterCpuNum(jpred.getType());\r
-                       if (clusterCpuNum != 0) {\r
-                               jpred.setNCore(clusterCpuNum);\r
-                       }\r
-               }\r
-               return confJpred;\r
-       }\r
-\r
-       @Override\r
-       public String presetAlign(List<FastaSequence> sequences,\r
-                       Preset<Jpred> preset) throws JobSubmissionException,\r
-                       WrongParameterException {\r
-               WSUtil.validateFastaInput(sequences);\r
-               if (preset == null) {\r
-                       throw new WrongParameterException("Preset must be provided!");\r
-               }\r
-               Limit<Jpred> limit = getLimit(preset.getName());\r
-               ConfiguredExecutable<Jpred> confClust = init(sequences);\r
-               confClust.addParameters(preset.getOptions());\r
-               return WSUtil.align(sequences, confClust, log, "presetAlign", limit);\r
-       }\r
-\r
-       @Override\r
-       public String customAlign(List<FastaSequence> sequences,\r
-                       List<Option<Jpred>> options) throws JobSubmissionException,\r
-                       WrongParameterException {\r
-               WSUtil.validateFastaInput(sequences);\r
-               ConfiguredExecutable<Jpred> confClust = init(sequences);\r
-               List<String> params = WSUtil.getCommands(options, Jpred.KEY_VALUE_SEPARATOR);\r
-               confClust.addParameters(params);\r
-               log.info("Setting parameters: " + params);\r
-               return WSUtil.align(sequences, confClust, log, "customAlign", getLimit(""));\r
-       }\r
-\r
-       @Override\r
-       public RunnerConfig<Jpred> getRunnerOptions() {\r
-               return jpredOptions;\r
-       }\r
-\r
-       @SuppressWarnings("unchecked")\r
-       @Override\r
-       public Alignment getResult(String jobId) throws ResultNotAvailableException {\r
-               WSUtil.validateJobId(jobId);\r
-               AsyncExecutor asyncEngine = Configurator.getAsyncEngine(jobId);\r
-               ConfiguredExecutable<Jpred> jpred = (ConfiguredExecutable<Jpred>) asyncEngine.getResults(jobId);\r
-               return (Alignment)jpred.getResults();\r
-       }\r
-\r
-       @Override\r
-       public Limit<Jpred> getLimit(String presetName) {\r
-               if (limitMan == null) {\r
-                       // No limit is configured\r
-                       return null;\r
-               }\r
-               Limit<Jpred> limit = limitMan.getLimitByName(presetName);\r
-               return limit;\r
-       }\r
-\r
-       @Override\r
-       public LimitsManager<Jpred> getLimits() {\r
-               return limitMan;\r
-       }\r
-\r
-       @Override\r
-       public boolean cancelJob(String jobId) {\r
-               WSUtil.validateJobId(jobId);\r
-               boolean result = WSUtil.cancelJob(jobId);\r
-               return result;\r
-       }\r
-\r
-       @Override\r
-       public JobStatus getJobStatus(String jobId) {\r
-               WSUtil.validateJobId(jobId);\r
-               JobStatus status = WSUtil.getJobStatus(jobId);\r
-               return status;\r
-       }\r
-\r
-       @Override\r
-       public PresetManager<Jpred> getPresets() {\r
-               return jpredPresets;\r
-       }\r
-\r
-       @Override\r
-       public ChunkHolder pullExecStatistics(String jobId, long position) {\r
-               WSUtil.validateJobId(jobId);\r
-               String file = Configurator.getWorkDirectory(jobId) + File.separator + Jpred.getStatFile();\r
-               ChunkHolder cholder = WSUtil.pullFile(file, position);\r
-               return cholder;\r
-       }\r
-\r
-}\r
+//package compbio.ws.server;\r
+//\r
+//import java.io.File;\r
+//import java.util.List;\r
+//\r
+//import javax.jws.WebService;\r
+//\r
+//import org.apache.log4j.Logger;\r
+//\r
+//import compbio.data.msa.JABAService;\r
+//import compbio.data.msa.MsaWS;\r
+//import compbio.data.sequence.Alignment;\r
+//import compbio.data.sequence.JpredAlignment;\r
+//import compbio.data.sequence.FastaSequence;\r
+//import compbio.engine.AsyncExecutor;\r
+//import compbio.engine.Configurator;\r
+//import compbio.engine.client.ConfiguredExecutable;\r
+//import compbio.engine.client.Executable;\r
+//import compbio.engine.client.SkeletalExecutable;\r
+//import compbio.engine.client.EngineUtil;\r
+//import compbio.metadata.ChunkHolder;\r
+//import compbio.metadata.JobStatus;\r
+//import compbio.metadata.JobSubmissionException;\r
+//import compbio.metadata.Limit;\r
+//import compbio.metadata.LimitsManager;\r
+//import compbio.metadata.Option;\r
+//import compbio.metadata.Preset;\r
+//import compbio.metadata.PresetManager;\r
+//import compbio.metadata.ResultNotAvailableException;\r
+//import compbio.metadata.RunnerConfig;\r
+//import compbio.metadata.WrongParameterException;\r
+//import compbio.runner.RunnerUtil;\r
+//import compbio.runner.predictors.Jpred;\r
+//\r
+//@WebService(endpointInterface = "compbio.data.msa.MsaWS", targetNamespace = JABAService.V2_SERVICE_NAMESPACE, serviceName = "JpredWS")\r
+//public class JpredWS implements MsaWS<Jpred> {\r
+//\r
+//     private static Logger log = Logger.getLogger(JpredWS.class);\r
+//\r
+//     private static final RunnerConfig<Jpred> jpredOptions = RunnerUtil.getSupportedOptions(Jpred.class);\r
+//     private static final PresetManager<Jpred> jpredPresets = RunnerUtil.getPresets(Jpred.class);\r
+//     private static final LimitsManager<Jpred> limitMan = EngineUtil.getLimits(new Jpred().getType());\r
+//\r
+//     @Override\r
+//     public String align(List<FastaSequence> sequences)\r
+//                     throws JobSubmissionException {\r
+//             WSUtil.validateFastaInput(sequences);\r
+//             ConfiguredExecutable<Jpred> confClust = init(sequences);\r
+//             return WSUtil.align(sequences, confClust, log, "align", getLimit(""));\r
+//     }\r
+//\r
+//     ConfiguredExecutable<Jpred> init(List<FastaSequence> dataSet)\r
+//                     throws JobSubmissionException {\r
+//             Jpred jpred = new Jpred();\r
+//             jpred.setInput(SkeletalExecutable.INPUT);\r
+//             jpred.setOutput(SkeletalExecutable.OUTPUT);\r
+//             jpred.setError(SkeletalExecutable.ERROR);\r
+//             ConfiguredExecutable<Jpred> confJpred = Configurator.configureExecutable(jpred, dataSet);\r
+//             // Set the number of threads for the cluster execution from conf file\r
+//             if (confJpred.getExecProvider() == Executable.ExecProvider.Cluster) {\r
+//                     int clusterCpuNum = SkeletalExecutable.getClusterCpuNum(jpred.getType());\r
+//                     if (clusterCpuNum != 0) {\r
+//                             jpred.setNCore(clusterCpuNum);\r
+//                     }\r
+//             }\r
+//             return confJpred;\r
+//     }\r
+//\r
+//     @Override\r
+//     public String presetAlign(List<FastaSequence> sequences,\r
+//                     Preset<Jpred> preset) throws JobSubmissionException,\r
+//                     WrongParameterException {\r
+//             WSUtil.validateFastaInput(sequences);\r
+//             if (preset == null) {\r
+//                     throw new WrongParameterException("Preset must be provided!");\r
+//             }\r
+//             Limit<Jpred> limit = getLimit(preset.getName());\r
+//             ConfiguredExecutable<Jpred> confClust = init(sequences);\r
+//             confClust.addParameters(preset.getOptions());\r
+//             return WSUtil.align(sequences, confClust, log, "presetAlign", limit);\r
+//     }\r
+//\r
+//     @Override\r
+//     public String customAlign(List<FastaSequence> sequences,\r
+//                     List<Option<Jpred>> options) throws JobSubmissionException,\r
+//                     WrongParameterException {\r
+//             WSUtil.validateFastaInput(sequences);\r
+//             ConfiguredExecutable<Jpred> confClust = init(sequences);\r
+//             List<String> params = WSUtil.getCommands(options, Jpred.KEY_VALUE_SEPARATOR);\r
+//             confClust.addParameters(params);\r
+//             log.info("Setting parameters: " + params);\r
+//             return WSUtil.align(sequences, confClust, log, "customAlign", getLimit(""));\r
+//     }\r
+//\r
+//     @Override\r
+//     public RunnerConfig<Jpred> getRunnerOptions() {\r
+//             return jpredOptions;\r
+//     }\r
+//\r
+//     @SuppressWarnings("unchecked")\r
+//     @Override\r
+//     public Alignment getResult(String jobId) throws ResultNotAvailableException {\r
+//             WSUtil.validateJobId(jobId);\r
+//             AsyncExecutor asyncEngine = Configurator.getAsyncEngine(jobId);\r
+//             ConfiguredExecutable<Jpred> jpred = (ConfiguredExecutable<Jpred>) asyncEngine.getResults(jobId);\r
+//             return (Alignment)jpred.getResults();\r
+//     }\r
+//\r
+//     @Override\r
+//     public Limit<Jpred> getLimit(String presetName) {\r
+//             if (limitMan == null) {\r
+//                     // No limit is configured\r
+//                     return null;\r
+//             }\r
+//             Limit<Jpred> limit = limitMan.getLimitByName(presetName);\r
+//             return limit;\r
+//     }\r
+//\r
+//     @Override\r
+//     public LimitsManager<Jpred> getLimits() {\r
+//             return limitMan;\r
+//     }\r
+//\r
+//     @Override\r
+//     public boolean cancelJob(String jobId) {\r
+//             WSUtil.validateJobId(jobId);\r
+//             boolean result = WSUtil.cancelJob(jobId);\r
+//             return result;\r
+//     }\r
+//\r
+//     @Override\r
+//     public JobStatus getJobStatus(String jobId) {\r
+//             WSUtil.validateJobId(jobId);\r
+//             JobStatus status = WSUtil.getJobStatus(jobId);\r
+//             return status;\r
+//     }\r
+//\r
+//     @Override\r
+//     public PresetManager<Jpred> getPresets() {\r
+//             return jpredPresets;\r
+//     }\r
+//\r
+//     @Override\r
+//     public ChunkHolder pullExecStatistics(String jobId, long position) {\r
+//             WSUtil.validateJobId(jobId);\r
+//             String file = Configurator.getWorkDirectory(jobId) + File.separator + Jpred.getStatFile();\r
+//             ChunkHolder cholder = WSUtil.pullFile(file, position);\r
+//             return cholder;\r
+//     }\r
+//\r
+//}\r