*/
public class Jws2Discoverer implements Runnable, WSMenuEntryProviderI
{
- private java.beans.PropertyChangeSupport changeSupport = new java.beans.PropertyChangeSupport(this);
+ private java.beans.PropertyChangeSupport changeSupport = new java.beans.PropertyChangeSupport(
+ this);
/**
* change listeners are notified of "services" property changes
changeSupport.removePropertyChangeListener(listener);
}
- boolean running=false;
+ boolean running = false;
+
@Override
public void run()
{
{
return;
}
- running=true;
-// Cache.initLogger();
-// Cache.log.setLevel(Level.DEBUG);
+ running = true;
+ try
+ {
+ Class foo = getClass().getClassLoader().loadClass(
+ "compbio.ws.client.JwsBase");
+ } catch (ClassNotFoundException e)
+ {
+ System.err
+ .println("Not enabling Jalview Webservices version 2: client jar is not available."
+ +"\nPlease check that your webstart JNLP file is up to date!");
+ running = false;
+ return;
+ }
+ // Cache.initLogger();
+ // Cache.log.setLevel(Level.DEBUG);
// TODO: Document and PACK JWS2
String jwsservers = Cache.getDefault("JWS2HOSTURLS",
"http://webservices.compbio.dundee.ac.uk:8084/jws2");
try
{
service = Jws2Base.connect(jwsservers, srv);
- }
- catch (Exception e)
+ } catch (Exception e)
{
- System.err.println("Jws2 Discoverer: Problem with "+jwsservers+" with service "+srv+":\n"+e.getMessage());
- if (!(e instanceof javax.xml.ws.WebServiceException)) {
+ System.err.println("Jws2 Discoverer: Problem with "
+ + jwsservers + " with service " + srv + ":\n"
+ + e.getMessage());
+ if (!(e instanceof javax.xml.ws.WebServiceException))
+ {
e.printStackTrace();
}
}
{
Cache.log.error("Exception when discovering Jws2 services.", e);
}
- running=false;
+ running = false;
changeSupport.firePropertyChange("services", new Vector(), services);
}
*/
private void addService(String jwsservers, Services srv, MsaWS service2)
{
- if (services==null) {
+ if (services == null)
+ {
services = new Vector<Jws2Instance>();
}
System.out.println("Discovered service: " + jwsservers + " "
this.serviceType = serviceType;
this.service = service;
}
+
PresetManager presets = null;
+
/**
- * non thread safe - gets the presets for this service (blocks whilst it calls the service to get the preset set)
+ * non thread safe - gets the presets for this service (blocks whilst it
+ * calls the service to get the preset set)
+ *
* @return service presets or null if exceptions were raised.
*/
- public PresetManager getPresets() {
+ public PresetManager getPresets()
+ {
if (presets == null)
{
- try {
+ try
+ {
presets = service.getPresets();
} catch (Exception ex)
{
- System.err.println("Exception when retrieving presets for service "+serviceType+" at "+hosturl);
+ System.err
+ .println("Exception when retrieving presets for service "
+ + serviceType + " at " + hosturl);
}
}
return presets;
@Override
public void attachWSMenuEntry(JMenu wsmenu, final AlignFrame alignFrame)
{
- if (running || services==null || services.size() == 0)
+ if (running || services == null || services.size() == 0)
{
return;
}
for (final Jws2Instance service : services)
{
msacl.attachWSMenuEntry(jws2, service, alignFrame);
- /*JMenuItem sitem = new JMenuItem(service.serviceType);
- sitem.setToolTipText("Hosted at " + service.hosturl);
- sitem.addActionListener(new ActionListener()
- {
-
- @Override
- public void actionPerformed(ActionEvent e)
- {
- AlignmentView msa = alignFrame.gatherSequencesForAlignment();
- MsaWSClient client = new MsaWSClient(service,
- "JWS2 Alignment of " + alignFrame.getTitle(), msa, false,
- true, alignFrame.getViewport().getAlignment().getDataset(),
- alignFrame);
- }
- });*/
+ /*
+ * JMenuItem sitem = new JMenuItem(service.serviceType);
+ * sitem.setToolTipText("Hosted at " + service.hosturl);
+ * sitem.addActionListener(new ActionListener() {
+ *
+ * @Override public void actionPerformed(ActionEvent e) { AlignmentView
+ * msa = alignFrame.gatherSequencesForAlignment(); MsaWSClient client =
+ * new MsaWSClient(service, "JWS2 Alignment of " + alignFrame.getTitle(),
+ * msa, false, true, alignFrame.getViewport().getAlignment().getDataset(),
+ * alignFrame); } });
+ */
}
- if (services.size()>0)
+ if (services.size() > 0)
{
wsmenu.add(jws2);
}
-
+
}
+
public static void main(String[] args)
{
Thread runner = new Thread(getDiscoverer());
- getDiscoverer().addPropertyChangeListener(new PropertyChangeListener() {
+ getDiscoverer().addPropertyChangeListener(new PropertyChangeListener()
+ {
@Override
public void propertyChange(PropertyChangeEvent evt)
{
- System.out.println("Changesupport: There are now "+getDiscoverer().services.size()+" services");
+ System.out.println("Changesupport: There are now "
+ + getDiscoverer().services.size() + " services");
}
});
runner.start();
;
}
}
+
private static Jws2Discoverer discoverer;
+
public static Jws2Discoverer getDiscoverer()
{
- if (discoverer==null)
+ if (discoverer == null)
{
discoverer = new Jws2Discoverer();
}
public boolean hasServices()
{
// TODO Auto-generated method stub
- return !running && services!=null && services.size()>0;
+ return !running && services != null && services.size() > 0;
}
public boolean isRunning()
{
return running;
}
-
+
}