You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by si...@apache.org on 2010/01/14 04:39:10 UTC

svn commit: r899047 - in /labs/magma/trunk/foundation-i18n/src: main/java/org/apache/magma/i18n/LocalizeLocalizableString.aj test/java/org/apache/magma/i18n/LocalizableStringTest.java test/resources/META-INF/ test/resources/META-INF/messages.properties

Author: simoneg
Date: Thu Jan 14 03:39:09 2010
New Revision: 899047

URL: http://svn.apache.org/viewvc?rev=899047&view=rev
Log:
Double step in localizing with string parameters

Added:
    labs/magma/trunk/foundation-i18n/src/test/java/org/apache/magma/i18n/LocalizableStringTest.java
    labs/magma/trunk/foundation-i18n/src/test/resources/META-INF/
    labs/magma/trunk/foundation-i18n/src/test/resources/META-INF/messages.properties
Modified:
    labs/magma/trunk/foundation-i18n/src/main/java/org/apache/magma/i18n/LocalizeLocalizableString.aj

Modified: labs/magma/trunk/foundation-i18n/src/main/java/org/apache/magma/i18n/LocalizeLocalizableString.aj
URL: http://svn.apache.org/viewvc/labs/magma/trunk/foundation-i18n/src/main/java/org/apache/magma/i18n/LocalizeLocalizableString.aj?rev=899047&r1=899046&r2=899047&view=diff
==============================================================================
--- labs/magma/trunk/foundation-i18n/src/main/java/org/apache/magma/i18n/LocalizeLocalizableString.aj (original)
+++ labs/magma/trunk/foundation-i18n/src/main/java/org/apache/magma/i18n/LocalizeLocalizableString.aj Thu Jan 14 03:39:09 2010
@@ -38,7 +38,15 @@
 		message = CurrentLocale.convert(message);
 		Object[] args = ls.getArgs();
 		if (args == null || args.length == 0) return message;
-		return MessageFormat.format(message, args);
+		Object[] nargs = new Object[args.length];
+		for (int i = 0; i < args.length; i++) {
+			if (args[i] instanceof String) {
+				nargs[i] = CurrentLocale.convert((String)args[i]);
+			} else {
+				nargs[i] = args[i];
+			}
+		}
+		return MessageFormat.format(message, nargs);
 	}
 	
 }

Added: labs/magma/trunk/foundation-i18n/src/test/java/org/apache/magma/i18n/LocalizableStringTest.java
URL: http://svn.apache.org/viewvc/labs/magma/trunk/foundation-i18n/src/test/java/org/apache/magma/i18n/LocalizableStringTest.java?rev=899047&view=auto
==============================================================================
--- labs/magma/trunk/foundation-i18n/src/test/java/org/apache/magma/i18n/LocalizableStringTest.java (added)
+++ labs/magma/trunk/foundation-i18n/src/test/java/org/apache/magma/i18n/LocalizableStringTest.java Thu Jan 14 03:39:09 2010
@@ -0,0 +1,34 @@
+package org.apache.magma.i18n;
+
+import static org.junit.Assert.*;
+
+import java.util.Locale;
+
+import org.apache.magma.basics.LocalizableString;
+import org.junit.Test;
+
+
+public class LocalizableStringTest {
+
+	@Test
+	public void translation() throws Exception {
+		CurrentLocale.setLocale(Locale.ITALY);
+		LocalizableString ls = null;
+		ls = new LocalizableString("no translation");
+		assertEquals("no translation", ls.toString());
+		ls = new LocalizableString("untranslated {0}", 1);
+		assertEquals("untranslated 1", ls.toString());
+		ls = new LocalizableString("My test");
+		assertEquals("Mio test", ls.toString());
+		ls = new LocalizableString("People");
+		assertEquals("persone", ls.toString());
+		ls = new LocalizableString("List of {0}", "animals");
+		assertEquals("Lista di animals", ls.toString());
+		ls = new LocalizableString("List of {0}", "people");
+		assertEquals("Lista di persone", ls.toString());
+		ls = new LocalizableString("List of {0}", "pets");
+		assertEquals("Lista di animali domestici", ls.toString());
+		
+	}
+	
+}

Added: labs/magma/trunk/foundation-i18n/src/test/resources/META-INF/messages.properties
URL: http://svn.apache.org/viewvc/labs/magma/trunk/foundation-i18n/src/test/resources/META-INF/messages.properties?rev=899047&view=auto
==============================================================================
--- labs/magma/trunk/foundation-i18n/src/test/resources/META-INF/messages.properties (added)
+++ labs/magma/trunk/foundation-i18n/src/test/resources/META-INF/messages.properties Thu Jan 14 03:39:09 2010
@@ -0,0 +1,4 @@
+mytest=Mio test
+listof_0_=Lista di {0}
+people=persone
+pets=animali domestici
\ No newline at end of file



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org