From 2305d687bac5ed8a76ecb93c54c7b090a928e362 Mon Sep 17 00:00:00 2001 From: Jim Procter Date: Mon, 10 Aug 2020 15:10:35 +0100 Subject: [PATCH] JAL-3691 toUpperCase(Locale.ROOT) for all standard file format operations --- src/jalview/io/FeaturesFile.java | 4 +++- src/jalview/io/FileFormats.java | 7 ++++--- src/jalview/io/FormatAdapter.java | 3 ++- src/jalview/io/IdentifyFile.java | 5 +++-- src/jalview/io/JPredFile.java | 3 ++- src/jalview/io/JnetAnnotationMaker.java | 4 +++- src/jalview/io/MSFfile.java | 3 ++- src/jalview/io/packed/ParsePackedSet.java | 5 +++-- src/jalview/io/vcf/VCFLoader.java | 5 +++-- 9 files changed, 25 insertions(+), 14 deletions(-) diff --git a/src/jalview/io/FeaturesFile.java b/src/jalview/io/FeaturesFile.java index 92473ec..7e62f6b 100755 --- a/src/jalview/io/FeaturesFile.java +++ b/src/jalview/io/FeaturesFile.java @@ -28,6 +28,7 @@ import java.util.Collections; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Map.Entry; import java.util.TreeMap; @@ -346,7 +347,8 @@ public class FeaturesFile extends AlignFile implements FeaturesSourceI String line; while ((line = nextLine()) != null) { - if (line.toUpperCase().startsWith(ENDFILTERS)) + // TODO: use .trim().equalsIgnoreCase here instead ? + if (line.toUpperCase(Locale.ROOT).startsWith(ENDFILTERS)) { return; } diff --git a/src/jalview/io/FileFormats.java b/src/jalview/io/FileFormats.java index aadcdb9..de83e9b 100644 --- a/src/jalview/io/FileFormats.java +++ b/src/jalview/io/FileFormats.java @@ -24,6 +24,7 @@ import java.util.ArrayList; import java.util.HashSet; import java.util.LinkedHashMap; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Set; @@ -102,7 +103,7 @@ public class FileFormats protected void registerFileFormat(FileFormatI format, boolean isIdentifiable) { - String name = format.getName().toUpperCase(); + String name = format.getName().toUpperCase(Locale.ROOT); if (formats.containsKey(name)) { System.err.println("Overwriting file format: " + format.getName()); @@ -121,7 +122,7 @@ public class FileFormats */ public void deregisterFileFormat(String name) { - FileFormatI ff = formats.remove(name.toUpperCase()); + FileFormatI ff = formats.remove(name.toUpperCase(Locale.ROOT)); identifiable.remove(ff); } @@ -174,7 +175,7 @@ public class FileFormats */ public FileFormatI forName(String format) { - return format == null ? null : formats.get(format.toUpperCase()); + return format == null ? null : formats.get(format.toUpperCase(Locale.ROOT)); } /** diff --git a/src/jalview/io/FormatAdapter.java b/src/jalview/io/FormatAdapter.java index 6d3c18a..4d8794f 100755 --- a/src/jalview/io/FormatAdapter.java +++ b/src/jalview/io/FormatAdapter.java @@ -33,6 +33,7 @@ import jalview.datamodel.SequenceI; import jalview.util.Comparison; import java.io.IOException; +import java.util.Locale; /** * Additional formatting methods used by the application in a number of places. @@ -161,7 +162,7 @@ public class FormatAdapter extends AppletFormatAdapter public boolean getCacheSuffixDefault(FileFormatI format) { - return Cache.getDefault(format.getName().toUpperCase() + "_JVSUFFIX", + return Cache.getDefault(format.getName().toUpperCase(Locale.ROOT) + "_JVSUFFIX", true); } diff --git a/src/jalview/io/IdentifyFile.java b/src/jalview/io/IdentifyFile.java index ff959b0..ed1c29f 100755 --- a/src/jalview/io/IdentifyFile.java +++ b/src/jalview/io/IdentifyFile.java @@ -21,6 +21,7 @@ package jalview.io; import java.io.IOException; +import java.util.Locale; /** * DOCUMENT ME! @@ -143,7 +144,7 @@ public class IdentifyFile break; } } - data = data.toUpperCase(); + data = data.toUpperCase(Locale.ROOT); if (data.startsWith(ScoreMatrixFile.SCOREMATRIX)) { @@ -284,7 +285,7 @@ public class IdentifyFile if ((lessThan > -1)) // possible Markup Language data i.e HTML, // RNAML, XML { - String upper = data.toUpperCase(); + String upper = data.toUpperCase(Locale.ROOT); if (upper.substring(lessThan).startsWith("