X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2Fslivkaws%2FSlivkaWSDiscoverer.java;h=56f7b9f63450b69cbe82fdf91006325003d9e5a8;hb=ddc73338c0a046369b53151e8b3ebfba4d385df7;hp=6b3856a3f8992641bfdd7b09449cff5706c340b2;hpb=6a7ffd7997c11b84a81acbdd83e462cac76f124b;p=jalview.git diff --git a/src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java b/src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java index 6b3856a..56f7b9f 100644 --- a/src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java +++ b/src/jalview/ws/slivkaws/SlivkaWSDiscoverer.java @@ -1,18 +1,15 @@ package jalview.ws.slivkaws; -import jalview.datamodel.AlignmentView; import jalview.gui.AlignFrame; import jalview.ws.WSMenuEntryProviderI; import jalview.ws.jws2.MsaWSClient; import jalview.ws.jws2.SequenceAnnotationWSClient; -import java.awt.event.ActionEvent; import java.io.IOError; import java.io.IOException; import java.net.URISyntaxException; import javax.swing.JMenu; -import javax.swing.JMenuItem; import uk.ac.dundee.compbio.slivkaclient.SlivkaClient; import uk.ac.dundee.compbio.slivkaclient.SlivkaService; @@ -21,13 +18,13 @@ public class SlivkaWSDiscoverer implements Runnable, WSMenuEntryProviderI { private static SlivkaWSDiscoverer instance = null; - private SlivkaClient client; + private SlivkaClient slivkaClient; private SlivkaWSDiscoverer() { try { - client = new SlivkaClient("gjb-www-1.cluster.lifesci.dundee.ac.uk", 3203); + slivkaClient = new SlivkaClient("gjb-www-1.cluster.lifesci.dundee.ac.uk", 3203); } catch (URISyntaxException e) { throw new RuntimeException(e); @@ -53,7 +50,7 @@ public class SlivkaWSDiscoverer implements Runnable, WSMenuEntryProviderI slivkaMenu.add(alignmentMenu); try { - for (SlivkaService service : client.getServices()) + for (SlivkaService service : slivkaClient.getServices()) { msaClassifier: { @@ -66,36 +63,9 @@ public class SlivkaWSDiscoverer implements Runnable, WSMenuEntryProviderI } continue; } - SlivkaMsaServiceInstance instance = new SlivkaMsaServiceInstance(client, service); - JMenuItem defaultEntry = new JMenuItem(String.format("%s with defaults", service.label)); - defaultEntry.addActionListener((ActionEvent evt) -> { - AlignmentView msa = alignFrame.gatherSequencesForAlignment(); - if (msa != null) - { - new MsaWSClient(instance, alignFrame.getTitle(), msa, false, true, - alignFrame.getViewport().getAlignment().getDataset(), alignFrame); - } - }); - alignmentMenu.add(defaultEntry); - - JMenuItem customEntry = new JMenuItem(String.format("%s with custom parameters", service.label)); - customEntry.addActionListener((ActionEvent evt) -> { - AlignmentView msa = alignFrame.gatherSequencesForAlignment(); - if (msa != null) - { - try - { - SlivkaParamSet paramSet = new SlivkaParamSet(service); - new MsaWSClient(instance, paramSet, null, true, alignFrame.getTitle(), msa, false, true, - alignFrame.getViewport().getAlignment().getDataset(), alignFrame); - } catch (IOException exc) - { - throw new IOError(exc); - } - } - }); - alignmentMenu.add(customEntry); - + SlivkaMsaServiceInstance instance = new SlivkaMsaServiceInstance(slivkaClient, service); + MsaWSClient client = new MsaWSClient(); + client.attachWSMenuEntry(alignmentMenu, instance, alignFrame); alignmentMenu.addSeparator(); } } catch (IOException e) @@ -108,7 +78,7 @@ public class SlivkaWSDiscoverer implements Runnable, WSMenuEntryProviderI slivkaMenu.add(disorderMenu); try { - for (SlivkaService service : client.getServices()) + for (SlivkaService service : slivkaClient.getServices()) { msaClassifier: { @@ -121,21 +91,10 @@ public class SlivkaWSDiscoverer implements Runnable, WSMenuEntryProviderI } continue; } - JMenuItem menuEntry = new JMenuItem(String.format("%s with custom parameters", service.label)); - disorderMenu.add(menuEntry); - SlivkaAnnotationServiceInstance serviceInstance = new SlivkaAnnotationServiceInstance(client, service); - menuEntry.addActionListener((ActionEvent evt) -> { - try - { - SlivkaParamSet paramSet = new SlivkaParamSet(service); - SequenceAnnotationWSClient client = new SequenceAnnotationWSClient(); - client.initSequenceAnnotationWSClient(serviceInstance, alignFrame, paramSet, true); - } catch (IOException e) - { - throw new IOError(e); - } - - }); + SlivkaAnnotationServiceInstance serviceInstance = new SlivkaAnnotationServiceInstance(slivkaClient, service); + SequenceAnnotationWSClient client = new SequenceAnnotationWSClient(); + client.attachWSMenuEntry(disorderMenu, serviceInstance, alignFrame); + disorderMenu.addSeparator(); } } catch (IOException e) {