X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2Frest%2FRestClient.java;h=95de391295d25e810007f3cbf2617625f7c427a4;hb=b69d271a9c1b122869742832b09675de2dc7c84a;hp=ee23790d765d4947423d841f357794ce4f18d238;hpb=0740cd1a6899f88e8da16e20fb3bcd886fd6caa7;p=jalview.git diff --git a/src/jalview/ws/rest/RestClient.java b/src/jalview/ws/rest/RestClient.java index ee23790..95de391 100644 --- a/src/jalview/ws/rest/RestClient.java +++ b/src/jalview/ws/rest/RestClient.java @@ -1,3 +1,20 @@ +/******************************************************************************* + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) + * Copyright (C) 2011 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + *******************************************************************************/ /** * */ @@ -15,6 +32,7 @@ import javax.swing.JOptionPane; import javax.swing.event.MenuEvent; import javax.swing.event.MenuListener; +import jalview.bin.Cache; import jalview.datamodel.AlignmentView; import jalview.gui.AlignFrame; import jalview.gui.AlignViewport; @@ -286,23 +304,24 @@ public class RestClient extends WSClient implements WSClientI, public static RestClient makeShmmrRestClient() { - String action = "Analysis", description = "Sequence Harmony and Multi-Relief (UNSTABLE!)", name = "Sequence Harmony"; + String action = "Analysis", description = "Sequence Harmony and Multi-Relief (Brandt et al. 2010)", name = "Multi-Harmony"; 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); + //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(); - aliinput.token = "ali";//_file"; - aliinput.writeAsFile=false;//true; + // SHMR server has a 65K limit for content pasted into the 'ali' parameter, so we always upload our files. + aliinput.token = "ali_file";//_file"; + aliinput.writeAsFile=true;//true; //aliinput.token = "ali_file"; //aliinput.writeAsFile=true; iparams.put(aliinput.token, aliinput); @@ -316,7 +335,7 @@ public class RestClient extends WSClient implements WSClientI, action, description, name, - "http://www.ibi.vu.nl/programs/shmrwww/index.php?tool=jalview",// ?tool=jalview&mbjob[method]=shmr&mbjob[description]=step1", + "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); @@ -343,13 +362,14 @@ public class RestClient extends WSClient implements WSClientI, } protected static Vector services=null; + public static final String RSBS_SERVICES="RSBS_SERVICES"; public static RestClient[] getRestClients() { if (services==null) { services = new Vector(); try { - for (RestServiceDescription descr: RestServiceDescription.parseDescriptions(jalview.bin.Cache.getDefault("RSBS_SERVICES",makeShmmrRestClient().service.toString()))) + for (RestServiceDescription descr: RestServiceDescription.parseDescriptions(jalview.bin.Cache.getDefault(RSBS_SERVICES,makeShmmrRestClient().service.toString()))) { services.add(descr.toString()); } @@ -412,8 +432,21 @@ public class RestClient extends WSClient implements WSClientI, public static void setRsbsServices(Vector rsbsUrls) { - // TODO: consider validating services ? - services = new Vector(rsbsUrls); + if (rsbsUrls!=null) + { + // TODO: consider validating services ? + services = new Vector(rsbsUrls); + StringBuffer sprop = new StringBuffer(); + for (String s:services) + { + sprop.append(s); + } + Cache.setProperty(RSBS_SERVICES, sprop.toString()); + } + else + { + Cache.removeProperty(RSBS_SERVICES); + } } }