From: Jim Procter Date: Wed, 28 Oct 2015 11:36:10 +0000 (+0000) Subject: JAL-715 JAL-724 refactored multi harmony definition out of core class X-Git-Url: http://source.jalview.org/gitweb/?a=commitdiff_plain;h=e3e5f3e40517d53343859e4878c3032ae892d619;p=jalview.git JAL-715 JAL-724 refactored multi harmony definition out of core class --- diff --git a/src/jalview/gui/RestServiceEditorPane.java b/src/jalview/gui/RestServiceEditorPane.java index ec8e7f1..961ec4c 100644 --- a/src/jalview/gui/RestServiceEditorPane.java +++ b/src/jalview/gui/RestServiceEditorPane.java @@ -472,7 +472,7 @@ public class RestServiceEditorPane extends GRestServiceEditorPane df.getContentPane().setLayout(new BorderLayout()); df.getContentPane().add( (nulserv = !nulserv) ? new RestServiceEditorPane( - jalview.ws.rest.RestClient + jalview.ws.rest.clientdefs.ShmrRestClient .makeShmmrRestClient() .getRestDescription()) : new RestServiceEditorPane(), diff --git a/src/jalview/ws/rest/RestClient.java b/src/jalview/ws/rest/RestClient.java index 1fb9259..1abe36e 100644 --- a/src/jalview/ws/rest/RestClient.java +++ b/src/jalview/ws/rest/RestClient.java @@ -27,15 +27,14 @@ import jalview.gui.AlignViewport; import jalview.gui.AlignmentPanel; import jalview.gui.Desktop; import jalview.gui.WebserviceInfo; -import jalview.io.packed.DataProvider.JvDataType; import jalview.util.MessageManager; import jalview.ws.WSClient; import jalview.ws.WSClientI; import jalview.ws.WSMenuEntryProviderI; +import jalview.ws.rest.clientdefs.ShmrRestClient; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.util.Hashtable; import java.util.Vector; import javax.swing.JMenu; @@ -336,47 +335,6 @@ public class RestClient extends WSClient implements WSClientI, } } - public static RestClient makeShmmrRestClient() - { - String action = "Analysis", description = "Sequence Harmony and Multi-Relief (Brandt et al. 2010)", name = MessageManager - .getString("label.multiharmony"); - Hashtable iparams = new Hashtable(); - jalview.ws.rest.params.JobConstant toolp; - // toolp = new jalview.ws.rest.JobConstant("tool","jalview"); - // iparams.put(toolp.token, toolp); - // toolp = new jalview.ws.rest.params.JobConstant("mbjob[method]","shmr"); - // iparams.put(toolp.token, toolp); - // toolp = new - // jalview.ws.rest.params.JobConstant("mbjob[description]","step 1"); - // iparams.put(toolp.token, toolp); - // toolp = new jalview.ws.rest.params.JobConstant("start_search","1"); - // iparams.put(toolp.token, toolp); - // toolp = new jalview.ws.rest.params.JobConstant("blast","0"); - // iparams.put(toolp.token, toolp); - - jalview.ws.rest.params.Alignment aliinput = new jalview.ws.rest.params.Alignment(); - // SHMR server has a 65K limit for content pasted into the 'ali' parameter, - // so we always upload our files. - aliinput.token = "ali_file"; - aliinput.writeAsFile = true; - iparams.put(aliinput.token, aliinput); - jalview.ws.rest.params.SeqGroupIndexVector sgroups = new jalview.ws.rest.params.SeqGroupIndexVector(); - sgroups.setMinsize(2); - sgroups.min = 2;// need at least two group defined to make a partition - iparams.put("groups", sgroups); - sgroups.token = "groups"; - sgroups.sep = " "; - RestServiceDescription shmrService = new RestServiceDescription( - action, - description, - name, - "http://zeus.few.vu.nl/programs/shmrwww/index.php?tool=jalview",// ?tool=jalview&mbjob[method]=shmr&mbjob[description]=step1", - "?tool=jalview", iparams, true, false, '-'); - // a priori knowledge of the data returned from the service - shmrService.addResultDatatype(JvDataType.ANNOTATION); - return new RestClient(shmrService); - } - public AlignmentPanel recoverAlignPanelForView() { AlignmentPanel[] aps = Desktop @@ -411,7 +369,7 @@ public class RestClient extends WSClient implements WSClientI, for (RestServiceDescription descr : RestServiceDescription .parseDescriptions(jalview.bin.Cache.getDefault( RSBS_SERVICES, - makeShmmrRestClient().service.toString()))) + ShmrRestClient.makeShmmrRestClient().service.toString()))) { services.add(descr.toString()); } diff --git a/src/jalview/ws/rest/clientdefs/ShmrRestClient.java b/src/jalview/ws/rest/clientdefs/ShmrRestClient.java new file mode 100644 index 0000000..a10931b --- /dev/null +++ b/src/jalview/ws/rest/clientdefs/ShmrRestClient.java @@ -0,0 +1,58 @@ +package jalview.ws.rest.clientdefs; + +import jalview.io.packed.DataProvider.JvDataType; +import jalview.util.MessageManager; +import jalview.ws.rest.InputType; +import jalview.ws.rest.RestClient; +import jalview.ws.rest.RestServiceDescription; +import jalview.ws.rest.params.Alignment; +import jalview.ws.rest.params.JobConstant; +import jalview.ws.rest.params.SeqGroupIndexVector; + +import java.util.Hashtable; + +public class ShmrRestClient +{ + + public static RestClient makeShmmrRestClient() + { + String action = "Analysis", description = "Sequence Harmony and Multi-Relief (Brandt et al. 2010)", name = MessageManager + .getString("label.multiharmony"); + Hashtable iparams = new Hashtable(); + jalview.ws.rest.params.JobConstant toolp; + // toolp = new jalview.ws.rest.JobConstant("tool","jalview"); + // iparams.put(toolp.token, toolp); + // toolp = new jalview.ws.rest.params.JobConstant("mbjob[method]","shmr"); + // iparams.put(toolp.token, toolp); + // toolp = new + // jalview.ws.rest.params.JobConstant("mbjob[description]","step 1"); + // iparams.put(toolp.token, toolp); + // toolp = new jalview.ws.rest.params.JobConstant("start_search","1"); + // iparams.put(toolp.token, toolp); + // toolp = new jalview.ws.rest.params.JobConstant("blast","0"); + // iparams.put(toolp.token, toolp); + + jalview.ws.rest.params.Alignment aliinput = new jalview.ws.rest.params.Alignment(); + // SHMR server has a 65K limit for content pasted into the 'ali' parameter, + // so we always upload our files. + aliinput.token = "ali_file"; + aliinput.writeAsFile = true; + iparams.put(aliinput.token, aliinput); + jalview.ws.rest.params.SeqGroupIndexVector sgroups = new jalview.ws.rest.params.SeqGroupIndexVector(); + sgroups.setMinsize(2); + sgroups.min = 2;// need at least two group defined to make a partition + iparams.put("groups", sgroups); + sgroups.token = "groups"; + sgroups.sep = " "; + RestServiceDescription shmrService = new RestServiceDescription( + action, + description, + name, + "http://zeus.few.vu.nl/programs/shmrwww/index.php?tool=jalview",// ?tool=jalview&mbjob[method]=shmr&mbjob[description]=step1", + "?tool=jalview", iparams, true, false, '-'); + // a priori knowledge of the data returned from the service + shmrService.addResultDatatype(JvDataType.ANNOTATION); + return new RestClient(shmrService); + } + +} diff --git a/test/jalview/ws/rest/ShmmrRSBSService.java b/test/jalview/ws/rest/ShmmrRSBSService.java index 30383f7..a9989fd 100644 --- a/test/jalview/ws/rest/ShmmrRSBSService.java +++ b/test/jalview/ws/rest/ShmmrRSBSService.java @@ -24,6 +24,7 @@ import static org.testng.AssertJUnit.assertNotNull; import static org.testng.AssertJUnit.assertTrue; import jalview.gui.AlignFrame; +import jalview.ws.rest.clientdefs.ShmrRestClient; import java.util.Map; @@ -43,13 +44,13 @@ public class ShmmrRSBSService assertTrue( "Test Rsd Exchange using using default Shmmr service failed.", testRsdExchange("Test using default Shmmr service", - RestClient.makeShmmrRestClient().service)); + ShmrRestClient.makeShmmrRestClient().service)); } @Test(groups = { "Functional" }) public void testShmmrServiceDataprep() throws Exception { - RestClient _rc = RestClient.makeShmmrRestClient(); + RestClient _rc = ShmrRestClient.makeShmmrRestClient(); assertNotNull(_rc); AlignFrame alf = new jalview.io.FileLoader(false) .LoadFileWaitTillLoaded("examples/testdata/smad.fa",