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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to