X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2Frest%2FRestClient.java;h=7fbae89834f41f06f2fec6a129ff0a6a82f58c0a;hb=fee1b781ca14aadea5d112fc554fe14879c787c5;hp=ba6dbebcfd4a5edc97d0ea325fd9e03ae0ce3db8;hpb=ad20cd92225f2ee8c251d39b00b90555d382a616;p=jalview.git diff --git a/src/jalview/ws/rest/RestClient.java b/src/jalview/ws/rest/RestClient.java index ba6dbeb..7fbae89 100644 --- a/src/jalview/ws/rest/RestClient.java +++ b/src/jalview/ws/rest/RestClient.java @@ -1,45 +1,49 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8) - * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * 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. + * 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 . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.ws.rest; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.util.Hashtable; -import java.util.Vector; - -import javax.swing.JMenu; -import javax.swing.JMenuItem; -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; import jalview.gui.AlignmentPanel; import jalview.gui.Desktop; +import jalview.gui.JvOptionPane; 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 java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.Hashtable; +import java.util.Vector; + +import javax.swing.JMenu; +import javax.swing.JMenuItem; +import javax.swing.event.MenuEvent; +import javax.swing.event.MenuListener; + /** * @author JimP * @@ -76,16 +80,26 @@ public class RestClient extends WSClient implements WSClientI, public RestClient(RestServiceDescription service2, AlignFrame alignFrame) { + this(service2, alignFrame, false); + } + + boolean headless = false; + + public RestClient(RestServiceDescription service2, AlignFrame alignFrame, + boolean nogui) + { service = service2; af = alignFrame; av = alignFrame.getViewport(); + headless = nogui; constructJob(); } public void setWebserviceInfo(boolean headless) { - WebServiceJobTitle = service.details.Action + " using " - + service.details.Name; + WebServiceJobTitle = MessageManager.formatMessage( + "label.webservice_job_title", new String[] { + service.details.Action, service.details.Name }); WebServiceName = service.details.Name; WebServiceReference = "No reference - go to url for more info"; if (service.details.description != null) @@ -95,7 +109,7 @@ public class RestClient extends WSClient implements WSClientI, if (!headless) { wsInfo = new WebserviceInfo(WebServiceJobTitle, WebServiceName + "\n" - + WebServiceReference); + + WebServiceReference, true); wsInfo.setRenderAsHtml(true); } @@ -128,8 +142,9 @@ public class RestClient extends WSClient implements WSClientI, final AlignFrame alignFrame) { JMenuItem submit = new JMenuItem(service.details.Name); - submit.setToolTipText(service.details.Action + " using " - + service.details.Name); + submit.setToolTipText(MessageManager.formatMessage( + "label.rest_client_submit", new String[] { + service.details.Action, service.details.Name })); submit.addActionListener(new ActionListener() { @@ -246,9 +261,12 @@ public class RestClient extends WSClient implements WSClientI, _input = new AlignmentView(av.getAlignment(), av.getColumnSelection(), av.getSelectionGroup(), av.hasHiddenColumns(), true, true); - viewTitle = "selected " - + (av.hasHiddenColumns() ? "visible" : "") - + " region of " + af.getTitle(); + viewTitle = MessageManager.formatMessage( + "label.select_visible_region_of", + new String[] { + (av.hasHiddenColumns() ? MessageManager + .getString("label.visible") : ""), + af.getTitle() }); } else { @@ -257,9 +275,12 @@ public class RestClient extends WSClient implements WSClientI, av.getColumnSelection(), av.getSelectionGroup(), av.hasHiddenColumns(), false, true); } - viewTitle = "select and unselected " - + (av.hasHiddenColumns() ? "visible" : "") - + " regions from " + af.getTitle(); + viewTitle = MessageManager.formatMessage( + "label.select_unselect_visible_regions_from", + new String[] { + (av.hasHiddenColumns() ? MessageManager + .getString("label.visible") : ""), + af.getTitle() }); } else { @@ -267,8 +288,12 @@ public class RestClient extends WSClient implements WSClientI, _input = new AlignmentView(av.getAlignment(), av.getColumnSelection(), av.getSelectionGroup(), av.hasHiddenColumns(), true, true); - viewTitle = "selected " + (av.hasHiddenColumns() ? "visible" : "") - + " region of " + af.getTitle(); + viewTitle = MessageManager.formatMessage( + "label.select_visible_region_of", + new String[] { + (av.hasHiddenColumns() ? MessageManager + .getString("label.visible") : ""), + af.getTitle() }); } } else @@ -277,35 +302,44 @@ public class RestClient extends WSClient implements WSClientI, _input = new AlignmentView(av.getAlignment(), av.getColumnSelection(), null, av.hasHiddenColumns(), false, true); - viewTitle = "" + (av.hasHiddenColumns() ? "visible region of " : "") - + af.getTitle(); + viewTitle = "" + + (av.hasHiddenColumns() ? (new StringBuffer(" ") + .append(MessageManager + .getString("label.visible_region_of")) + .toString()) : "") + af.getTitle(); } RestJobThread jobsthread = new RestJobThread(this); if (jobsthread.isValid()) { - setWebserviceInfo(false); - wsInfo.setthisService(this); - jobsthread.setWebServiceInfo(wsInfo); + setWebserviceInfo(headless); + if (!headless) + { + wsInfo.setthisService(this); + jobsthread.setWebServiceInfo(wsInfo); + } jobsthread.start(); } else { // TODO: try to tell the user why the job couldn't be started. - JOptionPane + JvOptionPane .showMessageDialog( Desktop.desktop, (jobsthread.hasWarnings() ? jobsthread.getWarnings() - : "The Job couldn't be started. Please check your input, and the Jalview console for any warning messages."), - "Unable to start web service analysis", - JOptionPane.WARNING_MESSAGE); + : MessageManager + .getString("label.job_couldnt_be_started_check_input")), + MessageManager + .getString("label.unable_start_web_service_analysis"), + JvOptionPane.WARNING_MESSAGE); } } public static RestClient makeShmmrRestClient() { - String action = "Analysis", description = "Sequence Harmony and Multi-Relief (Brandt et al. 2010)", name = "Multi-Harmony"; + 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"); @@ -398,33 +432,6 @@ public class RestClient extends WSClient implements WSClientI, return lst; } - public static void main(String args[]) - { - try - { - RestClient[] clients = getRestClients(); - System.out.println("Got " + clients.length + " clients."); - int i = 0; - Vector urls = new Vector(); - for (RestClient cl : clients) - { - System.out.println("" + (++i) + ": " + cl.service.toString()); - urls.add(cl.service.toString()); - } - setRsbsServices(urls); - if (clients.length != getRestClients().length) - { - System.err - .println("Failed. Differing numbers of clients when stringified and parsed again."); - } - - } catch (Throwable x) - { - System.err.println("Failed. Unexpected exception."); - x.printStackTrace(); - } - } - public String getAction() { return service.details.Action;