Author: norman
Date: Wed Aug 18 13:10:04 2010
New Revision: 986656

URL: http://svn.apache.org/viewvc?rev=986656&view=rev
Log:
Allow the NAMESPACE to return the "real namespace" (IMAP-177)

Modified:
    
james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
    
james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
    
james/imap/trunk/seda/src/test/resources/org/apache/james/imap/scripts/Namespace.test

Modified: 
james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
URL: 
http://svn.apache.org/viewvc/james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java?rev=986656&r1=986655&r2=986656&view=diff
==============================================================================
--- 
james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
 (original)
+++ 
james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/AbstractMailboxProcessor.java
 Wed Aug 18 13:10:04 2010
@@ -314,6 +314,10 @@ abstract public class AbstractMailboxPro
     public MailboxPath buildFullPath(final ImapSession session, String 
mailboxName) {
         String namespace = null;
         String name = null;
+        
+        if (mailboxName == null || mailboxName.length() == 0) {
+            return new MailboxPath("", "", "");
+        }
         if (mailboxName.charAt(0) == ImapConstants.NAMESPACE_PREFIX_CHAR) {
             int namespaceLength = 
mailboxName.indexOf(MailboxConstants.DEFAULT_DELIMITER);
             if (namespaceLength > -1) {

Modified: 
james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
URL: 
http://svn.apache.org/viewvc/james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/LSubProcessor.java?rev=986656&r1=986655&r2=986656&view=diff
==============================================================================
--- 
james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
 (original)
+++ 
james/imap/trunk/processor/src/main/java/org/apache/james/imap/processor/LSubProcessor.java
 Wed Aug 18 13:10:04 2010
@@ -93,9 +93,11 @@ public class LSubProcessor extends Abstr
         final Collection<String> mailboxes = 
manager.subscriptions(mailboxSession);
         // If the mailboxName is fully qualified, ignore the reference name.
         String finalReferencename = referenceName;
+        
         if (mailboxName.charAt(0) == ImapConstants.NAMESPACE_PREFIX_CHAR) {
             finalReferencename = "";
         }
+      
         // Is the interpreted (combined) pattern relative?
         boolean isRelative = ((finalReferencename + mailboxName).charAt(0) != 
ImapConstants.NAMESPACE_PREFIX_CHAR);
         MailboxPath basePath = null;
@@ -106,7 +108,8 @@ public class LSubProcessor extends Abstr
         else {
             basePath = buildFullPath(session, finalReferencename);
         }
-        
+       
+
         final MailboxQuery expression = new MailboxQuery(basePath, 
mailboxName, '*', '%');
         final Collection<String> mailboxResponses = new ArrayList<String>();
         for (final String mailbox: mailboxes) {

Modified: 
james/imap/trunk/seda/src/test/resources/org/apache/james/imap/scripts/Namespace.test
URL: 
http://svn.apache.org/viewvc/james/imap/trunk/seda/src/test/resources/org/apache/james/imap/scripts/Namespace.test?rev=986656&r1=986655&r2=986656&view=diff
==============================================================================
--- 
james/imap/trunk/seda/src/test/resources/org/apache/james/imap/scripts/Namespace.test
 (original)
+++ 
james/imap/trunk/seda/src/test/resources/org/apache/james/imap/scripts/Namespace.test
 Wed Aug 18 13:10:04 2010
@@ -17,6 +17,6 @@
 # under the License.                                           #
 ################################################################
 C: A001 NAMESPACE
-S: \* NAMESPACE \(\((\"\"|\"#private\") \".\"\)\) NIL NIL
+S: \* NAMESPACE \(\((\"\"|\"#private\.\") \".\"\)\) NIL NIL
 S: A001 OK NAMESPACE completed.
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to