Merge branch 'develop' into spike/JAL-4047/JAL-4048_columns_in_sequenceID
[jalview.git] / src / jalview / datamodel / features / FeatureMatcher.java
index f844141..124909c 100644 (file)
@@ -1,5 +1,27 @@
+/*
+ * 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.
+ *  
+ * 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 <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
 package jalview.datamodel.features;
 
+import java.util.Locale;
+
 import jalview.datamodel.SequenceFeature;
 import jalview.util.MessageManager;
 import jalview.util.matcher.Condition;
@@ -125,7 +147,7 @@ public class FeatureMatcher implements FeatureMatcherI
       int nextQuotePos = descriptor.indexOf(QUOTE, 1);
       if (nextQuotePos == -1)
       {
-        System.err.println(invalidFormat);
+        jalview.bin.Console.errPrintln(invalidFormat);
         return null;
       }
       firstField = descriptor.substring(1, nextQuotePos);
@@ -137,18 +159,18 @@ public class FeatureMatcher implements FeatureMatcherI
       int nextSpacePos = descriptor.indexOf(SPACE);
       if (nextSpacePos == -1)
       {
-        System.err.println(invalidFormat);
+        jalview.bin.Console.errPrintln(invalidFormat);
         return null;
       }
       firstField = descriptor.substring(0, nextSpacePos);
       leftToParse = descriptor.substring(nextSpacePos + 1).trim();
     }
-    String lower = firstField.toLowerCase();
-    if (lower.startsWith(LABEL.toLowerCase()))
+    String lower = firstField.toLowerCase(Locale.ROOT);
+    if (lower.startsWith(LABEL.toLowerCase(Locale.ROOT)))
     {
       byLabel = true;
     }
-    else if (lower.startsWith(SCORE.toLowerCase()))
+    else if (lower.startsWith(SCORE.toLowerCase(Locale.ROOT)))
     {
       byScore = true;
     }
@@ -171,7 +193,7 @@ public class FeatureMatcher implements FeatureMatcherI
       cond = Condition.fromString(leftToParse);
       if (cond == null || cond.needsAPattern())
       {
-        System.err.println(invalidFormat);
+        jalview.bin.Console.errPrintln(invalidFormat);
         return null;
       }
     }
@@ -192,7 +214,7 @@ public class FeatureMatcher implements FeatureMatcherI
         else
         {
           // unbalanced quote
-          System.err.println(invalidFormat);
+          jalview.bin.Console.errPrintln(invalidFormat);
           return null;
         }
       }
@@ -288,6 +310,7 @@ public class FeatureMatcher implements FeatureMatcherI
     byLabel = forLabel;
     byScore = forScore;
   }
+
   @Override
   public boolean matches(SequenceFeature feature)
   {
@@ -310,8 +333,8 @@ public class FeatureMatcher implements FeatureMatcherI
   }
 
   /**
-   * Answers a string description of this matcher, suitable for display, debugging
-   * or logging. The format may change in future.
+   * Answers a string description of this matcher, suitable for display,
+   * debugging or logging. The format may change in future.
    */
   @Override
   public String toString()
@@ -331,7 +354,7 @@ public class FeatureMatcher implements FeatureMatcherI
     }
 
     Condition condition = matcher.getCondition();
-    sb.append(SPACE).append(condition.toString().toLowerCase());
+    sb.append(SPACE).append(condition.toString().toLowerCase(Locale.ROOT));
     if (condition.isNumeric())
     {
       sb.append(SPACE).append(matcher.getPattern());
@@ -393,7 +416,7 @@ public class FeatureMatcher implements FeatureMatcherI
         sb.append(displayName);
       }
     }
-  
+
     Condition condition = matcher.getCondition();
     sb.append(SPACE).append(condition.getStableName());
     String pattern = matcher.getPattern();
@@ -411,7 +434,7 @@ public class FeatureMatcher implements FeatureMatcherI
         sb.append(SPACE).append(pattern);
       }
     }
-  
+
     return sb.toString();
   }
 }