1 package jalview.ws.jws2;
3 import jalview.gui.WsJobParameters;
4 import jalview.util.MessageManager;
5 import jalview.ws.api.ServiceWithParameters;
6 import jalview.ws.jws2.jabaws2.Jws2Instance;
8 import java.awt.BorderLayout;
9 import java.awt.event.WindowEvent;
10 import java.awt.event.WindowListener;
11 import java.util.Iterator;
12 import java.util.List;
13 import java.util.Vector;
15 import javax.swing.JFrame;
16 import javax.swing.JPanel;
18 import compbio.metadata.Option;
19 import compbio.metadata.Parameter;
20 import compbio.metadata.Preset;
21 import compbio.metadata.PresetManager;
23 public class JabaWsParamTest
27 * testing method - grab a service and parameter set and show the window
31 public static void main(String[] args)
33 jalview.ws.jws2.Jws2Discoverer disc = jalview.ws.jws2.Jws2Discoverer
38 Vector<String> services = new Vector<>();
39 services.addElement(args[p++]);
40 Jws2Discoverer.getDiscoverer().setServiceUrls(services);
47 System.err.println("Aborting. Problem discovering services.");
51 Jws2Instance lastserv = null;
52 for (ServiceWithParameters service : disc.getServices())
54 // this will fail for non-JABAWS services !
55 lastserv = (Jws2Instance) service;
56 if (p >= args.length || service.getName().equalsIgnoreCase(args[p]))
60 List<Preset> prl = null;
62 if (++p < args.length)
64 PresetManager prman = lastserv.getPresets();
67 pr = prman.getPresetByName(args[p]);
70 // just grab the last preset.
71 prl = prman.getPresets();
77 PresetManager prman = lastserv.getPresets();
80 prl = prman.getPresets();
83 Iterator<Preset> en = (prl == null) ? null : prl.iterator();
84 while (en != null && en.hasNext())
95 System.out.println("Testing opts dupes for "
96 + lastserv.getUri() + " : " + lastserv.getActionText()
97 + ":" + pr.getName());
98 List<Option> rg = lastserv.getRunnerConfig().getOptions();
103 Option cpy = jalview.ws.jws2.ParameterUtils.copyOption(o);
104 } catch (Exception e)
106 System.err.println("Failed to copy " + o.getName());
110 System.err.println("Failed to copy " + o.getName());
116 System.out.println("Testing param dupes:");
117 List<Parameter> rg = lastserv.getRunnerConfig()
119 for (Parameter o : rg)
123 Parameter cpy = jalview.ws.jws2.ParameterUtils
125 } catch (Exception e)
127 System.err.println("Failed to copy " + o.getName());
131 System.err.println("Failed to copy " + o.getName());
137 System.out.println("Testing param write:");
138 List<String> writeparam = null, readparam = null;
141 writeparam = jalview.ws.jws2.ParameterUtils
143 pr.getArguments(lastserv.getRunnerConfig()),
145 System.out.println("Testing param read :");
146 List<Option> pset = jalview.ws.jws2.ParameterUtils
147 .processParameters(writeparam,
148 lastserv.getRunnerConfig(), " ");
149 readparam = jalview.ws.jws2.ParameterUtils
150 .writeParameterSet(pset, " ");
151 Iterator<String> o = pr.getOptions().iterator(),
152 s = writeparam.iterator(), t = readparam.iterator();
153 boolean failed = false;
154 while (s.hasNext() && t.hasNext())
156 String on = o.next(), sn = s.next(), st = t.next();
160 "Original was " + on + " Phase 1 wrote " + sn
161 + "\tPhase 2 wrote " + st);
168 "Original parameters:\n" + pr.getOptions());
170 "Wrote parameters in first set:\n" + writeparam);
172 "Wrote parameters in second set:\n" + readparam);
175 } catch (Exception e)
180 WsJobParameters pgui = new WsJobParameters(null, lastserv,
181 new JabaPreset(lastserv, pr), null);
182 JFrame jf = new JFrame(MessageManager
183 .formatMessage("label.ws_parameters_for", new String[]
184 { lastserv.getActionText() }));
185 JPanel cont = new JPanel(new BorderLayout());
187 cont.setPreferredSize(pgui.getPreferredSize());
188 cont.add(pgui, BorderLayout.CENTER);
189 jf.setLayout(new BorderLayout());
190 jf.add(cont, BorderLayout.CENTER);
192 final Thread thr = Thread.currentThread();
193 jf.addWindowListener(new WindowListener()
197 public void windowActivated(WindowEvent e)
199 // TODO Auto-generated method stub
204 public void windowClosed(WindowEvent e)
209 public void windowClosing(WindowEvent e)
216 public void windowDeactivated(WindowEvent e)
218 // TODO Auto-generated method stub
223 public void windowDeiconified(WindowEvent e)
225 // TODO Auto-generated method stub
230 public void windowIconified(WindowEvent e)
232 // TODO Auto-generated method stub
237 public void windowOpened(WindowEvent e)
239 // TODO Auto-generated method stub
245 boolean inter = false;
251 } catch (Exception e)