You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by rd...@apache.org on 2009/05/15 15:10:26 UTC

svn commit: r775122 - in /james/imap/trunk: mailbox/src/main/java/org/apache/james/imap/mailbox/ store/src/main/java/org/apache/james/imap/store/ torque/src/main/java/org/apache/james/mailboxmanager/torque/

Author: rdonkin
Date: Fri May 15 13:10:26 2009
New Revision: 775122

URL: http://svn.apache.org/viewvc?rev=775122&view=rev
Log:
IMAP-86 Added Locale preferences to MailboxSession. https://issues.apache.org/jira/browse/IMAP-86

Modified:
    james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxSession.java
    james/imap/trunk/store/src/main/java/org/apache/james/imap/store/SimpleMailboxSession.java
    james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java
    james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java
    james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxSession.java

Modified: james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxSession.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxSession.java?rev=775122&r1=775121&r2=775122&view=diff
==============================================================================
--- james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxSession.java (original)
+++ james/imap/trunk/mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxSession.java Fri May 15 13:10:26 2009
@@ -20,6 +20,8 @@
 package org.apache.james.imap.mailbox;
 
 import java.util.Collection;
+import java.util.List;
+import java.util.Locale;
 
 import org.apache.commons.logging.Log;
 
@@ -69,6 +71,15 @@
          * @return not null
          */
         public String getUserName();
+        
+        /**
+         * Gets acceptable localisation for this user in preference order.
+         * When localising a phrase, each <code>Locale</code> should be 
+         * tried in order until an appropriate translation is obtained.
+         * 
+         * @return not null, when empty the default local should be used
+         */
+        public List<Locale> getLocalePreferences();
     }
     
     /**

Modified: james/imap/trunk/store/src/main/java/org/apache/james/imap/store/SimpleMailboxSession.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/store/src/main/java/org/apache/james/imap/store/SimpleMailboxSession.java?rev=775122&r1=775121&r2=775122&view=diff
==============================================================================
--- james/imap/trunk/store/src/main/java/org/apache/james/imap/store/SimpleMailboxSession.java (original)
+++ james/imap/trunk/store/src/main/java/org/apache/james/imap/store/SimpleMailboxSession.java Fri May 15 13:10:26 2009
@@ -21,6 +21,8 @@
 
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.List;
+import java.util.Locale;
 
 import org.apache.commons.logging.Log;
 import org.apache.james.imap.mailbox.MailboxSession;
@@ -46,7 +48,10 @@
     
     private boolean open;
 
-    public SimpleMailboxSession(final long sessionId, final String userName, final Log log, char deliminator) {
+    private final List<Locale> localePreferences;
+
+    public SimpleMailboxSession(final long sessionId, final String userName, final Log log, char deliminator,
+            final List<Locale> localePreferences) {
         super();
         this.sessionId = sessionId;
         this.log = log;
@@ -54,6 +59,7 @@
         sharedSpaces = new ArrayList<Namespace>();
         otherUsersSpace = null;
         personalSpace = new SimpleMailboxNamespace(deliminator, "");
+        this.localePreferences = localePreferences;
     }
 
     public Log getLog() {
@@ -103,24 +109,31 @@
 	}
 
     /**
-     * @see {@link MailboxSession#getOtherUsersSpace()}
+     * @see org.apache.james.imap.mailbox.MailboxSession#getOtherUsersSpace()
      */
     public Namespace getOtherUsersSpace() {
         return otherUsersSpace;
     }
 
     /**
-     * @see {@link MailboxSession#getPersonalSpace()}
+     * @see org.apache.james.imap.mailbox.MailboxSession#getPersonalSpace()
      */
     public Namespace getPersonalSpace() {
         return personalSpace;
     }
 
     /**
-     * @see {@link MailboxSession#getSharedSpace()}
+     * @see org.apache.james.imap.mailbox.MailboxSession#getSharedSpace()
      */
     public Collection<Namespace> getSharedSpaces() {
         return sharedSpaces;
     }
 
+    /**
+     * @see org.apache.james.imap.mailbox.MailboxSession.User#getLocalePreferences()
+     */
+    public List<Locale> getLocalePreferences() {
+        return localePreferences;
+    }
+
 }

Modified: james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java?rev=775122&r1=775121&r2=775122&view=diff
==============================================================================
--- james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java (original)
+++ james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java Fri May 15 13:10:26 2009
@@ -305,8 +305,9 @@
     }
 
 
+    @SuppressWarnings("unchecked")
     private SimpleMailboxSession createSession(String userName, Log log) {
-        return new SimpleMailboxSession(random.nextLong(), userName, log, delimiter);
+        return new SimpleMailboxSession(random.nextLong(), userName, log, delimiter, Collections.EMPTY_LIST);
     }
 
     public String resolve(final String userName, String mailboxPath) {

Modified: james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java?rev=775122&r1=775121&r2=775122&view=diff
==============================================================================
--- james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java (original)
+++ james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java Fri May 15 13:10:26 2009
@@ -355,8 +355,9 @@
         return createSession(userName, log);
     }
 
+    @SuppressWarnings("unchecked")
     private TorqueMailboxSession createSession(String userName, Log log) {
-        return new TorqueMailboxSession(random.nextLong(), log, userName, delimiter);
+        return new TorqueMailboxSession(random.nextLong(), log, userName, delimiter, Collections.EMPTY_LIST);
     }
 
     public String resolve(final String userName, String mailboxPath) {

Modified: james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxSession.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxSession.java?rev=775122&r1=775121&r2=775122&view=diff
==============================================================================
--- james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxSession.java (original)
+++ james/imap/trunk/torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxSession.java Fri May 15 13:10:26 2009
@@ -21,6 +21,8 @@
 
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.List;
+import java.util.Locale;
 
 import org.apache.commons.logging.Log;
 import org.apache.james.imap.mailbox.MailboxSession;
@@ -44,9 +46,11 @@
     private final String userName;
     
     private boolean open;
+    
+    private final List<Locale> localePreferences;
 
-
-    public TorqueMailboxSession(final long sessionId, final Log log, final String userName, char deliminator) {
+    public TorqueMailboxSession(final long sessionId, final Log log, final String userName, char deliminator,
+            final List<Locale> localePreferences) {
         super();
         this.sessionId = sessionId;
         this.log = log;
@@ -54,6 +58,7 @@
         sharedSpaces = new ArrayList<Namespace>();
         otherUsersSpace = null;
         personalSpace = new SimpleMailboxNamespace(deliminator, "");
+        this.localePreferences = localePreferences;
     }
     
     
@@ -125,4 +130,11 @@
     public Collection<Namespace> getSharedSpaces() {
         return sharedSpaces;
     }
+
+    /**
+     * @see org.apache.james.imap.mailbox.MailboxSession.User#getLocalePreferences()
+     */
+    public List<Locale> getLocalePreferences() {
+        return localePreferences;
+    }
 }



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