1 package jalview.ws.slivkaws;
3 import jalview.ws.params.ArgumentI;
4 import jalview.ws.params.WsParamSetI;
5 import jalview.ws.params.simple.BooleanOption;
6 import jalview.ws.params.simple.DoubleParameter;
7 import jalview.ws.params.simple.IntegerParameter;
8 import jalview.ws.params.simple.StringParameter;
10 import java.io.IOException;
11 import java.util.ArrayList;
12 import java.util.List;
14 import uk.ac.dundee.compbio.slivkaclient.BooleanField;
15 import uk.ac.dundee.compbio.slivkaclient.ChoiceField;
16 import uk.ac.dundee.compbio.slivkaclient.DecimalField;
17 import uk.ac.dundee.compbio.slivkaclient.FormField;
18 import uk.ac.dundee.compbio.slivkaclient.IntegerField;
19 import uk.ac.dundee.compbio.slivkaclient.SlivkaForm;
20 import uk.ac.dundee.compbio.slivkaclient.SlivkaService;
21 import uk.ac.dundee.compbio.slivkaclient.TextField;
25 public class SlivkaParamSet implements WsParamSetI
27 private SlivkaService service;
28 private List<ArgumentI> args = new ArrayList<>();
30 SlivkaParamSet(SlivkaService service) throws IOException {
31 this.service = service;
32 SlivkaForm form = service.getForm();
33 for (FormField field : form.getFields())
36 switch (field.getType()) {
38 BooleanField boolField = (BooleanField) field;
39 arg = new BooleanOption(
40 field.getName(), field.getDescription(), field.isRequired(),
41 boolField.getDefault(), boolField.getDefault(), null
45 TextField textField = (TextField) field;
46 arg = new StringParameter(
47 field.getName(), field.getDescription(), field.isRequired(),
48 textField.getDefault(), textField.getDefault()
52 IntegerField intField = (IntegerField) field;
53 arg = new IntegerParameter(
54 field.getName(), field.getDescription(), field.isRequired(),
55 intField.getDefault(), intField.getMin(), intField.getMax()
59 DecimalField doubleField = (DecimalField) field;
60 arg = new DoubleParameter(
61 field.getName(), field.getDescription(), field.isRequired(),
62 doubleField.getDefault(), doubleField.getMin(),
67 ChoiceField choiceField = (ChoiceField) field;
68 List<String> choices = new ArrayList<>(choiceField.getChoices());
69 arg = new StringParameter(field.getName(), field.getDescription(),
70 field.isRequired(), choiceField.getDefault(), choiceField.getDefault(),
83 public String getName()
89 public String getDescription()
95 public String[] getApplicableUrls()
97 return new String[] { service.getURL().toString() };
101 public String getSourceFile()
107 public void setSourceFile(String newfile)
112 public boolean isModifiable()
118 public List<ArgumentI> getArguments()
124 public void setArguments(List<ArgumentI> args)
126 throw new RuntimeException();