[Yanel-commits] rev 23936 - public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable

josias at wyona.com josias at wyona.com
Fri Apr 20 17:57:34 CEST 2007


Author: josias
Date: 2007-04-20 17:57:33 +0200 (Fri, 20 Apr 2007)
New Revision: 23936

Modified:
   public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable/AbstractPathTranslationManager.java
   public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable/DefaultTranslationManager.java
Log:
return languages in the same order as the realm languages as they are defined in the realm config file

Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable/AbstractPathTranslationManager.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable/AbstractPathTranslationManager.java	2007-04-20 15:54:46 UTC (rev 23935)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable/AbstractPathTranslationManager.java	2007-04-20 15:57:33 UTC (rev 23936)
@@ -18,6 +18,7 @@
 
 import java.util.ArrayList;
 import java.util.Iterator;
+import java.util.Set;
 
 import org.apache.log4j.Category;
 import org.wyona.yanel.core.Resource;
@@ -123,7 +124,15 @@
             }
         }
         String[] languages = new String[page.size()];
-        languages = (String[])page.keySet().toArray(languages);
+        // return languages in the order of the realm languages:
+        Set existingLanguages = page.keySet();
+        String[] realmLanguages = resource.getRealm().getLanguages();
+        int j = 0;
+        for (int i = 0; i < realmLanguages.length; i++) {
+            if (existingLanguages.contains(realmLanguages[i])) {
+                languages[j++] = realmLanguages[i];
+            }
+        }
         return languages;
     }
     

Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable/DefaultTranslationManager.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable/DefaultTranslationManager.java	2007-04-20 15:54:46 UTC (rev 23935)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/attributes/translatable/DefaultTranslationManager.java	2007-04-20 15:57:33 UTC (rev 23936)
@@ -23,6 +23,7 @@
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Iterator;
+import java.util.Set;
 
 import javax.xml.parsers.ParserConfigurationException;
 import javax.xml.parsers.SAXParser;
@@ -96,7 +97,15 @@
             return new String[0];
         }
         String[] languages = new String[langSet.size()];
-        languages = (String[])langSet.keySet().toArray(languages);
+        // return languages in the order of the realm languages:
+        Set existingLanguages = langSet.keySet();
+        String[] realmLanguages = resource.getRealm().getLanguages();
+        int j = 0;
+        for (int i = 0; i < realmLanguages.length; i++) {
+            if (existingLanguages.contains(realmLanguages[i])) {
+                languages[j++] = realmLanguages[i];
+            }
+        }
         return languages;
     }
     




More information about the Yanel-commits mailing list