[Yanel-commits] rev 23495 - public/yanel/trunk/src/resources/xml/src/java/org/wyona/yanel/impl/resources

michi at wyona.com michi at wyona.com
Thu Mar 29 12:11:28 CEST 2007


Author: michi
Date: 2007-03-29 12:11:27 +0200 (Thu, 29 Mar 2007)
New Revision: 23495

Modified:
   public/yanel/trunk/src/resources/xml/src/java/org/wyona/yanel/impl/resources/XMLResource.java
Log:
language fixed

Modified: public/yanel/trunk/src/resources/xml/src/java/org/wyona/yanel/impl/resources/XMLResource.java
===================================================================
--- public/yanel/trunk/src/resources/xml/src/java/org/wyona/yanel/impl/resources/XMLResource.java	2007-03-29 10:11:08 UTC (rev 23494)
+++ public/yanel/trunk/src/resources/xml/src/java/org/wyona/yanel/impl/resources/XMLResource.java	2007-03-29 10:11:27 UTC (rev 23495)
@@ -199,17 +199,28 @@
     }
 
     /**
-     * Get language with the following priorization: 1) yanel.meta.language query string parameter, 2) Accept-Language header, 3) Default en
+     * Get language with the following priorization: 1) yanel.meta.language query string parameter, 2) Resource Configuration property, 3) Accept-Language header, 4) Default language or realm
      */
-    private String getLanguage() {
+    private String getLanguage() throws Exception {
+        // TODO: Make this reusable. Also see org/wyona/yanel/servlet/YanelServlet.java
         String language = getRequest().getParameter("yanel.meta.language");
+
+        ResourceConfiguration rc = getConfiguration();
+        if (rc != null) {
+            language = rc.getProperty("language");
+        }
+
         if (language == null) {
             language = getRequest().getHeader("Accept-Language");
             if (language != null) {
                 log.error("DEBUG: Use Accept-Language from Request Header: " + language);
                 if (language.indexOf(",") > 0) {
-                   language = language.substring(0, language.indexOf(","));
+                    language = language.substring(0, language.indexOf(","));
                 }
+                int dashIndex = language.indexOf("-");
+                if (dashIndex > 0) {
+                    language = language.substring(0, dashIndex);
+                }
             }
         }
         if(language != null && language.length() > 0) return language;




More information about the Yanel-commits mailing list