You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2009/05/28 20:53:19 UTC

svn commit: r779721 - /jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JMeterUtils.java

Author: sebb
Date: Thu May 28 18:53:19 2009
New Revision: 779721

URL: http://svn.apache.org/viewvc?rev=779721&view=rev
Log:
Always allow Locale to be set, even if there is no corresponding properties file.

Modified:
    jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JMeterUtils.java

Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JMeterUtils.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JMeterUtils.java?rev=779721&r1=779720&r2=779721&view=diff
==============================================================================
--- jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JMeterUtils.java (original)
+++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/util/JMeterUtils.java Thu May 28 18:53:19 2009
@@ -51,7 +51,6 @@
 import org.apache.jmeter.gui.GuiPackage;
 import org.apache.jorphan.logging.LoggingManager;
 import org.apache.jorphan.test.UnitTestManager;
-import org.apache.jorphan.util.JMeterError;
 import org.apache.jorphan.util.JOrphanUtils;
 import org.apache.log.Logger;
 import org.apache.oro.text.PatternCacheLRU;
@@ -73,6 +72,8 @@
 
     private static final String EXPERT_MODE_PROPERTY = "jmeter.expertMode"; // $NON-NLS-1$
 
+    private static final String ENGLISH_LANGUAGE = Locale.ENGLISH.getLanguage();
+
     private static volatile Properties appProperties;
 
     private static final Vector localeChangeListeners = new Vector();
@@ -305,11 +306,11 @@
          */
         Locale def = null;
         boolean isDefault = false; // Are we the default language?
-        if (loc.getLanguage().equals(Locale.ENGLISH.getLanguage())) {
+        if (loc.getLanguage().equals(ENGLISH_LANGUAGE)) {
             isDefault = true;
             def = Locale.getDefault();
             // Don't change locale from en_GB to en
-            if (!def.getLanguage().equals(Locale.ENGLISH.getLanguage())) {
+            if (!def.getLanguage().equals(ENGLISH_LANGUAGE)) {
                 Locale.setDefault(Locale.ENGLISH);
             } else {
                 def = null; // no need to reset Locale
@@ -322,17 +323,15 @@
         } else {
             ignoreResorces = false;
             ResourceBundle resBund = ResourceBundle.getBundle("org.apache.jmeter.resources.messages", loc); // $NON-NLS-1$
-            if (isDefault || resBund.getLocale().equals(loc)) {// language change worked
-                resources = resBund;
-                locale = loc;
+            resources = resBund;
+            locale = loc;
+            final Locale resBundLocale = resBund.getLocale();
+            if (isDefault || resBundLocale.equals(loc)) {// language change worked
             // Check if we at least found the correct language:
-            } else if (resBund.getLocale().getLanguage().equals(loc.getLanguage())) {
-                log.warn("Unable to change language to '"+loc.toString()+"', using '"+loc.getLanguage()+"'");
-                resources = resBund;
-                locale = loc;
+            } else if (resBundLocale.getLanguage().equals(loc.getLanguage())) {
+                log.warn("Could not find resources for '"+loc.toString()+"', using '"+resBundLocale.toString()+"'");
             } else {
-                log.error("Unable to change language to "+loc.toString());
-                throw new JMeterError("Unable to change language to "+loc.toString());
+                log.error("Could not find resources for '"+loc.toString()+"'");
             }
         }
         notifyLocaleChangeListeners();



---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org