X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2Frest%2FInputType.java;h=6ac720a40541361abfb372f9e74809c1c7eb0715;hb=1ef93cb2817f75699773f049b8d25e5b509c2830;hp=4c51d57efa150a49f830c4275584d9234919b026;hpb=ad20cd92225f2ee8c251d39b00b90555d382a616;p=jalview.git diff --git a/src/jalview/ws/rest/InputType.java b/src/jalview/ws/rest/InputType.java index 4c51d57..6ac720a 100644 --- a/src/jalview/ws/rest/InputType.java +++ b/src/jalview/ws/rest/InputType.java @@ -1,22 +1,27 @@ /* - * 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.util.Locale; + import jalview.ws.params.ArgumentI; import jalview.ws.params.InvalidArgumentException; import jalview.ws.params.OptionI; @@ -43,6 +48,9 @@ import org.apache.http.entity.mime.content.StringBody; */ public abstract class InputType { + private static final Pattern URL_PATTERN = Pattern + .compile("^([^=]+)=?'?([^']*)?'?"); + /** * not used yet */ @@ -124,17 +132,17 @@ public abstract class InputType { if (type == null) { - return new StringBody(utf8.encode(content).asCharBuffer() - .toString()); + return new StringBody( + utf8.encode(content).asCharBuffer().toString()); } else { - return new StringBody(utf8.encode(content).asCharBuffer() - .toString(), type, utf8); + return new StringBody( + utf8.encode(content).asCharBuffer().toString(), type, utf8); } } catch (Exception ex) { - System.err.println("Couldn't transform string\n" + content + jalview.bin.Console.errPrintln("Couldn't transform string\n" + content + "\nException was :"); ex.printStackTrace(System.err); } @@ -206,7 +214,7 @@ public abstract class InputType boolean valid = true; for (String tok : tokenstring) { - Matcher mtch = Pattern.compile("^([^=]+)=?'?([^']*)?'?").matcher(tok); + Matcher mtch = URL_PATTERN.matcher(tok); if (mtch.find()) { try @@ -226,8 +234,8 @@ public abstract class InputType { valid = false; warnings.append("Invalid value for parameter " - + mtch.group(1).toLowerCase() + " '" + mtch.group(2) - + "' (expected an integer)\n"); + + mtch.group(1).toLowerCase(Locale.ROOT) + " '" + + mtch.group(2) + "' (expected an integer)\n"); } if (!configureProperty(mtch.group(1), mtch.group(2), warnings)) @@ -301,9 +309,10 @@ public abstract class InputType { // TODO: revise architecture - this is counter intuitive - options with // different values to their names are actually parameters - rg = (arg.getValue().length() > 0) ? (arg.getValue().equals( - arg.getName()) ? arg.getName() : arg.getName() + "='" - + arg.getValue() + "'") : arg.getName(); + rg = (arg.getValue().length() > 0) + ? (arg.getValue().equals(arg.getName()) ? arg.getName() + : arg.getName() + "='" + arg.getValue() + "'") + : arg.getName(); } if (rg.length() > 0) { @@ -311,7 +320,8 @@ public abstract class InputType } } StringBuffer warnings; - if (!configureFromURLtokenString(urltoks, warnings = new StringBuffer())) + if (!configureFromURLtokenString(urltoks, + warnings = new StringBuffer())) { throw new InvalidArgumentException(warnings.toString()); } @@ -320,8 +330,8 @@ public abstract class InputType protected OptionI createMolTypeOption(String name, String descr, boolean req, molType curType, molType defType) { - return new Option(name, descr, req, defType == null ? "" - : defType.toString(), + return new Option(name, descr, req, + defType == null ? "" : defType.toString(), curType == null ? "" : curType.toString(), molType.toStringValues(), null); }