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;
{
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);
slivkaMenu.add(alignmentMenu);
try
{
- for (SlivkaService service : client.getServices())
+ for (SlivkaService service : slivkaClient.getServices())
{
msaClassifier:
{
}
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)
slivkaMenu.add(disorderMenu);
try
{
- for (SlivkaService service : client.getServices())
+ for (SlivkaService service : slivkaClient.getServices())
{
msaClassifier:
{
}
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)
{