Author: nextgens
Date: 2008-07-16 10:12:41 +0000 (Wed, 16 Jul 2008)
New Revision: 21143
Modified:
trunk/freenet/src/freenet/l10n/L10n.java
Log:
l10n: keep the short-code for internal purposes, export the long-name outside
(bis)
Modified: trunk/freenet/src/freenet/l10n/L10n.java
===================================================================
--- trunk/freenet/src/freenet/l10n/L10n.java 2008-07-16 10:12:24 UTC (rev
21142)
+++ trunk/freenet/src/freenet/l10n/L10n.java 2008-07-16 10:12:41 UTC (rev
21143)
@@ -94,6 +94,7 @@
* @throws MissingResourceException
*/
public static void setLanguage(String selectedLanguage) throws
MissingResourceException {
+ selectedLanguage = mapLanguageNameToLongName(selectedLanguage);
synchronized (sync) {
Logger.normal(CLASS_NAME, "Changing the current
language to : " + selectedLanguage);
currentClass = new L10n(selectedLanguage);
@@ -369,6 +370,24 @@
return null;
}
+ /**
+ * Map a language identifier to its corresponding long name
+ *
+ * @param The name to look for
+ * @return The full text language name OR null if not found
+ */
+ public static String mapLanguageNameToLongName(String name) {
+ for(int i=0; i<AVAILABLE_LANGUAGES.length; i++) {
+ String currentShortCode = AVAILABLE_LANGUAGES[i][0];
+ String currentLongName = AVAILABLE_LANGUAGES[i][1];
+ String currentCountryCodeName =
AVAILABLE_LANGUAGES[i][2];
+
+ if(currentShortCode.equalsIgnoreCase(name) ||
currentLongName.equalsIgnoreCase(name) ||
currentCountryCodeName.equalsIgnoreCase(name))
+ return currentLongName;
+ }
+ return null;
+ }
+
public static boolean isOverridden(String key) {
synchronized(sync) {
if(translationOverride == null) return false;