4 import jalview.bin.Cache;
5 import jalview.gui.Preferences;
6 import jalview.util.MessageManager;
7 import jalview.ws.params.ArgumentI;
8 import jalview.ws.params.ParamDatastoreI;
9 import jalview.ws.params.WsParamSetI;
10 import jalview.ws.params.simple.BooleanOption;
11 import jalview.ws.params.simple.IntegerParameter;
12 import jalview.ws.params.simple.LogarithmicParameter;
13 import jalview.ws.params.simple.Option;
15 import java.io.IOException;
16 import java.util.ArrayList;
17 import java.util.Collection;
18 import java.util.List;
19 import java.util.Scanner;
22 public class HMMERParamStore implements ParamDatastoreI
27 List<WsParamSetI> presets = new ArrayList<>();
29 public HMMERParamStore(String name)
35 public List<WsParamSetI> getPresets()
37 // TODO Auto-generated method stub
42 public WsParamSetI getPreset(String name)
44 // TODO Auto-generated method stub
49 public List<ArgumentI> getServiceParameters()
51 List<ArgumentI> args = new ArrayList<>();
52 if ("hmmsearch".equals(name))
54 args.add(new IntegerParameter(
55 MessageManager.getString("label.number_of_results"),
57 .getString("label.number_of_results_desc"),
58 true, 100, 0, 100000));
59 String names = Cache.getProperty(Preferences.HMMSEARCH_DBS);
60 if (names != null && !names.isEmpty())
62 Collection<String> databases = new ArrayList<>();
63 databases.add(MessageManager.getString("label.this_alignment"));
64 Scanner nameScanner = new Scanner(names);
66 if (nameScanner.hasNext())
68 while (nameScanner.hasNext())
70 String next = nameScanner.next();
73 Cache.setProperty(Preferences.HMMSEARCH_DBS, "");
74 Cache.setProperty(Preferences.HMMSEARCH_DB_PATHS, "");
83 args.add(new Option(MessageManager.getString("label.database"),
84 MessageManager.getString("label.database_for_hmmsearch"),
85 true, MessageManager.getString("label.this_alignment"),
86 MessageManager.getString("label.this_alignment"), databases,
89 args.add(new BooleanOption(
90 MessageManager.getString("label.auto_align_seqs"),
91 MessageManager.getString("label.auto_align_seqs_desc"),
92 false, false, true, null));
93 args.add(new BooleanOption(
94 MessageManager.getString("label.use_accessions"),
95 MessageManager.getString("label.use_accessions_desc"),
96 false, false, true, null));
97 args.add(new BooleanOption(
98 MessageManager.getString("label.trim_termini"),
99 MessageManager.getString("label.trim_termini_desc"), false,
101 args.add(new LogarithmicParameter(
102 MessageManager.getString("label.seq_e_value"),
103 MessageManager.getString("label.seq_e_value_desc"), false,
104 0.001d, -63d, 9d, 4d));
106 args.add(new DoubleParameter(
107 MessageManager.getString("label.seq_score"),
108 MessageManager.getString("label.seq_score_desc"), false,
111 args.add(new LogarithmicParameter(
112 MessageManager.getString("label.dom_e_value_desc"),
113 MessageManager.getString("label.dom_e_value_desc"), false,
114 0.001d, -63d, 9d, 4d));
116 args.add(new DoubleParameter(
117 MessageManager.getString("label.dom_score"),
118 MessageManager.getString("label.dom_score_desc"), false, 0d,
123 if ("hmmalign".equals(name))
125 args.add(new BooleanOption(
126 MessageManager.getString("label.trim_termini"),
127 MessageManager.getString(
128 "label.trim_termini = Trim Non-Matching Termini_desc"),
129 false, false, true, null));
132 if ("hmmbuild".equals(name))
134 args.add(new BooleanOption(
135 MessageManager.getString("label.trim_termini"),
136 MessageManager.getString(
137 "label.trim_termini = Trim Non-Matching Termini_desc"),
138 false, false, true, null));
145 public boolean presetExists(String name)
147 // TODO Auto-generated method stub
152 public void deletePreset(String name)
154 // TODO Auto-generated method stub
159 public void storePreset(String presetName, String text,
160 List<ArgumentI> jobParams)
162 // TODO Auto-generated method stub
167 public void updatePreset(String oldName, String presetName, String text,
168 List<ArgumentI> jobParams)
170 // TODO Auto-generated method stub
175 public WsParamSetI parseServiceParameterFile(String name,
176 String description, String[] serviceURL, String parameters)
179 // TODO Auto-generated method stub
184 public String generateServiceParameterFile(WsParamSetI pset)
187 // TODO Auto-generated method stub