b05c973b58eafc92249f2980417a87cfbfc52964
[jabaws.git] / webservices / compbio / ws / server / RNAalifoldWS.java
1 package compbio.ws.server;
2
3 import java.io.File;
4 import java.util.List;
5
6 import javax.jws.WebParam;
7 import javax.jws.WebService;
8
9 import org.apache.log4j.Logger;
10
11 import compbio.data.msa.FoldWS;
12 import compbio.data.msa.JABAService;
13 import compbio.data.msa.JManagement;
14 import compbio.data.msa.Metadata;
15 import compbio.data.msa.SequenceAnnotation;
16 import compbio.data.sequence.Alignment;
17 import compbio.data.sequence.RNAStruct;
18 import compbio.data.sequence.FastaSequence;
19 import compbio.engine.AsyncExecutor;
20 import compbio.engine.Configurator;
21 import compbio.engine.client.ConfiguredExecutable;
22 import compbio.engine.client.SkeletalExecutable;
23 import compbio.metadata.ChunkHolder;
24 import compbio.metadata.JobStatus;
25 import compbio.metadata.JobSubmissionException;
26 import compbio.metadata.Limit;
27 import compbio.metadata.LimitExceededException;
28 import compbio.metadata.LimitsManager;
29 import compbio.metadata.Option;
30 import compbio.metadata.Preset;
31 import compbio.metadata.PresetManager;
32 import compbio.metadata.ResultNotAvailableException;
33 import compbio.metadata.RunnerConfig;
34 import compbio.metadata.UnsupportedRuntimeException;
35 import compbio.metadata.WrongParameterException;
36 import compbio.runner.Util;
37 import compbio.runner.disorder.GlobPlot;
38 import compbio.runner.structure.RNAalifold;
39
40 @WebService(endpointInterface = "compbio.data.msa.SequenceAnnotation", targetNamespace = JABAService.V2_SERVICE_NAMESPACE, serviceName = "RNAalifoldWS")
41 public class RNAalifoldWS extends SequenceAnnotationService<RNAalifold> 
42                 implements
43                         SequenceAnnotation<RNAalifold> {
44
45         private static Logger log = Logger.getLogger(ClustalWS.class);
46         
47         public RNAalifoldWS() {
48                 super (new RNAalifold(), log);
49         }
50
51         /*
52          * No options are supported, thus the result of this call will be as simple
53          * call to analize without parameters
54          */
55         @Override
56         public String customAnalize(List<FastaSequence> sequences,
57                         List<Option<RNAalifold>> options) throws UnsupportedRuntimeException,
58                         LimitExceededException, JobSubmissionException,
59                         WrongParameterException {
60                 
61                 return analize(sequences);
62         }
63
64         /*
65          * No presets are supported, thus the result of this call will be as simple
66          * call to analize without parameters
67          */
68         @Override
69         public String presetAnalize(List<FastaSequence> sequences,
70                         Preset<RNAalifold> preset) throws UnsupportedRuntimeException,
71                         LimitExceededException, JobSubmissionException,
72                         WrongParameterException {
73
74                 return analize(sequences);
75         }
76 }
77         
78