r500441 | eross | 2007-01-26 19:01:38 -0600 (Fri, 26 Jan 2007) | 2 lines

Bug 40937 - Fix use of String.toUpper and toLowerCase which do not work as
expected in some international locales, e.g. Turkish.

Index: src/java/org/apache/log4j/HTMLLayout.java
===================================================================
328c328
<         sbuf.append(c.getStyleClass(null).toLowerCase());
---
>         sbuf.append(c.getStyleClass(null));
371c371
<     String level = event.getLevel().toString().toLowerCase();
---
>     String level = event.getLevel().toString();
387c387
<         buf.append(c.getStyleClass(event).toLowerCase());
---
>         buf.append(c.getStyleClass(event));
Index: src/java/org/apache/log4j/db/dialect/Util.java
===================================================================
23a24
> import java.util.Locale;
26a28
>  * Database utilities.
29d30
<  *
38a40,42
>   /**
> * Returns a dialect based on the product name in the [EMAIL PROTECTED] DatabaseMetaData}.
>    */
44c48
<       String dbName = meta.getDatabaseProductName().toLowerCase();
---
> String dbName = meta.getDatabaseProductName().toLowerCase (Locale.ENGLISH);
Index: src/java/org/apache/log4j/Level.java
===================================================================
24a25
> import java.util.Locale;
215c216
<     String s = sArg.toUpperCase();
---
>     String s = sArg.toUpperCase(Locale.ENGLISH);
Index: src/java/org/apache/log4j/helpers/OptionConverter.java
===================================================================
29a30
> import java.util.Locale;
278c279
<     String s = value.trim().toUpperCase();
---
>     String s = value.trim().toUpperCase(Locale.ENGLISH);
Index: src/java/org/apache/log4j/helpers/DateTimeDateFormat.java
===================================================================
37,38d36
<     /** Short names for the months. */
<     String[] shortMonths = new DateFormatSymbols().getShortMonths();
Index: src/java/org/apache/log4j/helpers/DateLayout.java
===================================================================
111c111
<         dateFormatOption = value.toUpperCase();
---
>         dateFormatOption = value;
Index: src/java/org/apache/log4j/helpers/UtilLoggingLevel.java
===================================================================
20a21
> import java.util.Locale;
114c115
<     String s = sArg.toUpperCase();
---
>     String s = sArg.toUpperCase(Locale.ENGLISH);
120d120
<     //if(s.equals("FINE")) return Level.FINE;
129c129
<     if (s.equals("CONFI")) {
---
>     if (s.equals("CONFIG")) {
Index: src/java/org/apache/log4j/config/PropertySetter.java
===================================================================
34a35
> import java.util.Locale;
347c348
<     return name.substring(0, 1).toUpperCase() + name.substring(1);
---
> return name.substring(0, 1).toUpperCase(Locale.ENGLISH) + name.substring(1);
Index: src/java/org/apache/log4j/rule/RuleFactory.java
===================================================================
22a23
> import java.util.Locale;
77c78,81
< return ((symbol != null) && (rules.contains(symbol.toLowerCase ())));
---
>     if (symbol == null)
>       return false;
>     symbol = symbol.toLowerCase(Locale.ENGLISH);
>     return rules.contains(symbol);
Index: src/java/org/apache/log4j/rule/LevelInequalityRule.java
===================================================================
33,38d32
<     private static List levelList;
<     private static List utilLoggingLevelList;
<
<     static {
<         populateLevels();
<     }
43,64d36
<     private static void populateLevels() {
<         levelList = new LinkedList();
<
<         levelList.add(Level.FATAL.toString());
<         levelList.add(Level.ERROR.toString());
<         levelList.add(Level.WARN.toString());
<         levelList.add(Level.INFO.toString());
<         levelList.add(Level.DEBUG.toString());
<         levelList.add(Level.TRACE.toString());
<
<         utilLoggingLevelList = new LinkedList();
<
<         utilLoggingLevelList.add(UtilLoggingLevel.SEVERE.toString());
<         utilLoggingLevelList.add(UtilLoggingLevel.WARNING.toString());
<         utilLoggingLevelList.add(UtilLoggingLevel.INFO.toString());
<         utilLoggingLevelList.add(UtilLoggingLevel.CONFIG.toString());
<         utilLoggingLevelList.add(UtilLoggingLevel.FINE.toString());
<         utilLoggingLevelList.add(UtilLoggingLevel.FINER.toString());
<         utilLoggingLevelList.add(UtilLoggingLevel.FINEST.toString());
<
<     }
<
74,78c46,50
<         if (levelList.contains(value.toUpperCase())) {
<             thisLevel = Level.toLevel(value.toUpperCase());
< } else if (utilLoggingLevelList.contains(value.toUpperCase ())){
<             thisLevel = UtilLoggingLevel.toLevel(value.toUpperCase());
<         } else {
---
>         thisLevel = Level.toLevel(value, null);
>         if (thisLevel == null) {
>             thisLevel = UtilLoggingLevel.toLevel(value);
>         }
>         if (thisLevel == null) {
Index: src/java/org/apache/log4j/rule/PartialTextMatchRule.java
===================================================================
21a22
> import java.util.Locale;
66,68c67,70
<
<     return ((p2 != null) && (value != null)
< && (p2.toString().toLowerCase().indexOf(value.toLowerCase()) > -1));
---
>     if (p2 == null || value == null)
>       return false;
>     String s = p2.toString().toLowerCase(Locale.ENGLISH);
>     return s.indexOf(value.toLowerCase(Locale.ENGLISH)) != -1;
Index: src/java/org/apache/log4j/rule/LevelEqualsRule.java
===================================================================
21a22
> import java.util.Locale;
37,42d37
<     private static List levelList = new LinkedList();
<
<     static {
<         populateLevels();
<     }
<
47,57d41
<     private static void populateLevels() {
<         levelList = new LinkedList();
<
<         levelList.add(Level.FATAL.toString());
<         levelList.add(Level.ERROR.toString());
<         levelList.add(Level.WARN.toString());
<         levelList.add(Level.INFO.toString());
<         levelList.add(Level.DEBUG.toString());
<         levelList.add(Level.TRACE.toString());
<     }
<
59,63c43,45
<         Level thisLevel = null;
<         if (levelList.contains(value.toUpperCase())) {
<             thisLevel = Level.toLevel(value.toUpperCase());
<           } else {
< thisLevel = UtilLoggingLevel.toLevel(value.toUpperCase ());
---
>         Level thisLevel = Level.toLevel(value, null);
>         if (thisLevel == null) {
>            thisLevel = UtilLoggingLevel.toLevel(value);
65d46
<
81d61
<         populateLevels();
Index: src/java/org/apache/log4j/rule/InFixToPostFix.java
===================================================================
20a21
> import java.util.Locale;
92c93
<     symbol = symbol.toLowerCase();
---
>     symbol = symbol.toLowerCase(Locale.ENGLISH);
98,99c99,100
<     symbol1 = symbol1.toLowerCase();
<     symbol2 = symbol2.toLowerCase();
---
>     symbol1 = symbol1.toLowerCase(Locale.ENGLISH);
>     symbol2 = symbol2.toLowerCase(Locale.ENGLISH);
Index: src/java/org/apache/log4j/lbel/TokenStream.java
===================================================================
23a24
> import java.util.Locale;
100c101
<         String lowerCaseTxt = txt.toLowerCase();
---
>         String lowerCaseTxt = txt.toLowerCase(Locale.ENGLISH);
Index: tests/src/java/org/apache/log4j/DRFATestCase.java
===================================================================
23a24
> import java.util.Locale;
416c417
< new File(filename + new SimpleDateFormat (pattern).format(new Date()));
---
> new File(filename + new SimpleDateFormat(pattern, Locale.ENGLISH).format(new Date()));
Index: tests/src/java/org/apache/log4j/xml/XLevel.java
===================================================================
18a19,20
> import java.util.Locale;
>
55c57
<     String stringVal = sArg.toUpperCase();
---
>     String stringVal = sArg.toUpperCase(Locale.ENGLISH);




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to