Index: torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java
===================================================================
--- torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java	(Revision 960698)
+++ torque/src/main/java/org/apache/james/mailboxmanager/torque/TorqueMailboxManager.java	(Arbeitskopie)
@@ -356,7 +356,7 @@
     }
 
     private MailboxSession createSession(String userName, String password, Log log) {
-        return new SimpleMailboxSession(random.nextLong(), userName, password, log, MailboxConstants.DEFAULT_DELIMITER, new ArrayList<Locale>());
+        return new SimpleMailboxSession(random.nextLong(), userName, password, log, new ArrayList<Locale>());
     }
 
     public String resolve(final String userName, String mailboxPath) {
Index: store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java
===================================================================
--- store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java	(Revision 960698)
+++ store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java	(Arbeitskopie)
@@ -356,7 +356,7 @@
      * @return session
      */
     private SimpleMailboxSession createSession(String userName, String password, Log log) {
-        return new SimpleMailboxSession(randomId(), userName, password, log, MailboxConstants.DEFAULT_DELIMITER, new ArrayList<Locale>());
+        return new SimpleMailboxSession(randomId(), userName, password, log, new ArrayList<Locale>());
     }
 
     /**
Index: store/src/main/java/org/apache/james/imap/store/SimpleMailboxSession.java
===================================================================
--- store/src/main/java/org/apache/james/imap/store/SimpleMailboxSession.java	(Revision 960698)
+++ store/src/main/java/org/apache/james/imap/store/SimpleMailboxSession.java	(Arbeitskopie)
@@ -27,20 +27,19 @@
 import java.util.Map;
 
 import org.apache.commons.logging.Log;
+import org.apache.james.imap.mailbox.MailboxConstants;
 import org.apache.james.imap.mailbox.MailboxSession;
-import org.apache.james.imap.mailbox.util.SimpleMailboxNamespace;
 
 /**
  * Describes a mailbox session.
  */
 public class SimpleMailboxSession implements MailboxSession, MailboxSession.User {
 
+    private final Collection<String> sharedSpaces;
 
-    private final Collection<Namespace> sharedSpaces;
+    private final String otherUsersSpace;
 
-    private final Namespace otherUsersSpace;
-
-    private final Namespace personalSpace;
+    private final String personalSpace;
     
     private final long sessionId;
     
@@ -56,18 +55,17 @@
 
     private final Map<Object, Object> attributes;
 
-    public SimpleMailboxSession(final long sessionId, final String userName, final String password, final Log log, char deliminator,
-            final List<Locale> localePreferences) {
-        super();
+    public SimpleMailboxSession(final long sessionId, final String userName, final String password,
+            final Log log, final List<Locale> localePreferences) {
         this.sessionId = sessionId;
         this.log = log;
         this.userName = userName;
         this.password = password;
-        sharedSpaces = new ArrayList<Namespace>();
-        otherUsersSpace = null;
-        personalSpace = new SimpleMailboxNamespace(deliminator, "");
+        this.personalSpace = "";
+        this.otherUsersSpace = null;
+        this.sharedSpaces = new ArrayList<String>();
         this.localePreferences = localePreferences;
-        attributes = new HashMap<Object, Object>();
+        this.attributes = new HashMap<Object, Object>();
     }
 
     /*
@@ -135,21 +133,21 @@
     /**
      * @see org.apache.james.imap.mailbox.MailboxSession#getOtherUsersSpace()
      */
-    public Namespace getOtherUsersSpace() {
+    public String getOtherUsersSpace() {
         return otherUsersSpace;
     }
 
     /**
      * @see org.apache.james.imap.mailbox.MailboxSession#getPersonalSpace()
      */
-    public Namespace getPersonalSpace() {
+    public String getPersonalSpace() {
         return personalSpace;
     }
 
     /**
      * @see org.apache.james.imap.mailbox.MailboxSession#getSharedSpace()
      */
-    public Collection<Namespace> getSharedSpaces() {
+    public Collection<String> getSharedSpaces() {
         return sharedSpaces;
     }
 
Index: processor/src/test/java/org/apache/james/imap/processor/NamespaceProcessorTest.java
===================================================================
--- processor/src/test/java/org/apache/james/imap/processor/NamespaceProcessorTest.java	(Revision 960698)
+++ processor/src/test/java/org/apache/james/imap/processor/NamespaceProcessorTest.java	(Arbeitskopie)
@@ -62,39 +62,30 @@
     StatusResponseFactory statusResponseStub;
     ImapSession imapSessionStub;
     MailboxSession mailboxSessionStub;
-    MailboxSession.Namespace personalSpaceStub;
-    MailboxSession.Namespace usersSpaceStub;
-    MailboxSession.Namespace sharedSpaceStub;
+    String personalSpaceStub;
+    String usersSpaceStub;
+    String sharedSpaceStub;
     NamespaceRequest namespaceRequest;
-    Collection<MailboxSession.Namespace> sharedSpaces;
+    Collection<String> sharedSpaces;
     
     Mockery mockery = new JUnit4Mockery();
     
     @Before
     public void setUp() throws Exception {
-        sharedSpaces = new ArrayList<MailboxSession.Namespace>();
+        sharedSpaces = new ArrayList<String>();
         statusResponseStub = mockery.mock(StatusResponseFactory.class);
         final MailboxManager mailboxManagerStub = mockery.mock(MailboxManager.class);
         subject = new NamespaceProcessor(mockery.mock(ImapProcessor.class), mailboxManagerStub, statusResponseStub);
         imapSessionStub = mockery.mock(ImapSession.class);
         mailboxSessionStub = mockery.mock(MailboxSession.class);
-        personalSpaceStub = mockery.mock(MailboxSession.Namespace.class, "PersonalNamespace");
-        usersSpaceStub = mockery.mock(MailboxSession.Namespace.class, "UsersNamespace");
-        sharedSpaceStub = mockery.mock(MailboxSession.Namespace.class, "SharedNamespace");
      
         namespaceRequest = new NamespaceRequest(ImapCommand.anyStateCommand("Name"), "TAG");
         
         mockery.checking (new Expectations() {{
             allowing(imapSessionStub).getAttribute(ImapSessionUtils.MAILBOX_SESSION_ATTRIBUTE_SESSION_KEY); will(returnValue(mailboxSessionStub));
-            allowing(personalSpaceStub).getDeliminator(); will(returnValue(PERSONAL_DELIMINATOR));
-            allowing(personalSpaceStub).getPrefix(); will(returnValue(PERSONAL_PREFIX));
-            allowing(usersSpaceStub).getDeliminator(); will(returnValue(USERS_DELIMINATOR));
-            allowing(usersSpaceStub).getPrefix(); will(returnValue(USERS_PREFIX));
-            allowing(sharedSpaceStub).getDeliminator(); will(returnValue(SHARED_SPACE_DELIMINATOR));
-            allowing(sharedSpaceStub).getPrefix(); will(returnValue(SHARED_PREFIX));
-            allowing(mailboxSessionStub).getPersonalSpace(); will(returnValue(personalSpaceStub));
-            allowing(mailboxSessionStub).getOtherUsersSpace(); will(returnValue(usersSpaceStub));
-            allowing(mailboxSessionStub).getSharedSpaces();will(returnValue(sharedSpaces));
+            allowing(mailboxSessionStub).getPersonalSpace(); will(returnValue("PersonalNamespace"));
+            allowing(mailboxSessionStub).getOtherUsersSpace(); will(returnValue("UsersNamespace"));
+            allowing(mailboxSessionStub).getSharedSpaces();will(returnValue("SharedNamespace"));
             allowing(imapSessionStub).getState();will(returnValue(ImapSessionState.AUTHENTICATED));
             allowing(statusResponseStub).taggedOk(
                     with(any(String.class)), with(any(ImapCommand.class)), 
Index: processor/src/main/java/org/apache/james/imap/processor/NamespaceProcessor.java
===================================================================
--- processor/src/main/java/org/apache/james/imap/processor/NamespaceProcessor.java	(Revision 960698)
+++ processor/src/main/java/org/apache/james/imap/processor/NamespaceProcessor.java	(Arbeitskopie)
@@ -30,9 +30,9 @@
 import org.apache.james.imap.api.process.ImapSession;
 import org.apache.james.imap.message.request.NamespaceRequest;
 import org.apache.james.imap.message.response.NamespaceResponse;
+import org.apache.james.imap.mailbox.MailboxConstants;
 import org.apache.james.imap.mailbox.MailboxManager;
 import org.apache.james.imap.mailbox.MailboxSession;
-import org.apache.james.imap.mailbox.MailboxSession.Namespace;
 import org.apache.james.imap.processor.base.ImapSessionUtils;
 
 /**
@@ -50,51 +50,50 @@
     protected void doProcess(ImapRequest message, ImapSession session,
             String tag, ImapCommand command, Responder responder) {
         final MailboxSession mailboxSession = ImapSessionUtils.getMailboxSession(session);
-        final List<NamespaceResponse.Namespace> personalSpaces = buildPersonalNamespaces(mailboxSession);
-        
-        final MailboxSession.Namespace otherUsersSpace = mailboxSession.getOtherUsersSpace();
-        final List<NamespaceResponse.Namespace> otherUsersSpaces = buildOtherUsersSpaces(otherUsersSpace);
-        
-        final Collection<Namespace> sharedSpaces = mailboxSession.getSharedSpaces();
-        final List<NamespaceResponse.Namespace> sharedNamespaces;
-        if (sharedSpaces.isEmpty()) {
-            sharedNamespaces = null;
-        } else {
-            sharedNamespaces = new ArrayList<NamespaceResponse.Namespace>(sharedSpaces.size());
-            for (MailboxSession.Namespace space: sharedSpaces) {
-                sharedNamespaces.add(new NamespaceResponse.Namespace(space.getPrefix(), space.getDeliminator()));
-            }    
-        }
-        
-        final NamespaceResponse response = new NamespaceResponse(personalSpaces, otherUsersSpaces, sharedNamespaces);
+        final List<NamespaceResponse.Namespace> personalNamespaces = buildPersonalNamespaces(mailboxSession);
+        final List<NamespaceResponse.Namespace> otherUsersNamespaces = buildOtherUsersSpaces(mailboxSession);
+        final List<NamespaceResponse.Namespace> sharedNamespaces = buildSharedNamespaces(mailboxSession);
+        final NamespaceResponse response = new NamespaceResponse(personalNamespaces, otherUsersNamespaces, sharedNamespaces);
         responder.respond(response);
         unsolicitedResponses(session, responder, false);
         okComplete(command, tag, responder);
     }
 
-    private List<NamespaceResponse.Namespace> buildOtherUsersSpaces(final MailboxSession.Namespace otherUsersSpace) {
-        final List<NamespaceResponse.Namespace> otherUsersSpaces;
-        if (otherUsersSpace == null) {
-            otherUsersSpaces = null;
-        } else {
-            otherUsersSpaces = new ArrayList<NamespaceResponse.Namespace>(1);
-            otherUsersSpaces.add(new NamespaceResponse.Namespace(otherUsersSpace.getPrefix(), otherUsersSpace.getDeliminator()));
-        }
-        return otherUsersSpaces;
-    }
-
     /**
      * Builds personal namespaces from the session.
      * @param mailboxSession not null
      * @return personal namespaces, not null
      */
     private List<NamespaceResponse.Namespace> buildPersonalNamespaces(final MailboxSession mailboxSession) {
-        final MailboxSession.Namespace personalNamespace = mailboxSession.getPersonalSpace();
         final List<NamespaceResponse.Namespace> personalSpaces = new ArrayList<NamespaceResponse.Namespace>();
-        personalSpaces.add(new NamespaceResponse.Namespace(personalNamespace.getPrefix(), personalNamespace.getDeliminator()));
+        personalSpaces.add(new NamespaceResponse.Namespace(mailboxSession.getPersonalSpace(), MailboxConstants.DEFAULT_DELIMITER));
         return personalSpaces;
     }
 
+    private List<NamespaceResponse.Namespace> buildOtherUsersSpaces(final MailboxSession mailboxSession) {
+        final String otherUsersSpace = mailboxSession.getOtherUsersSpace();
+        final List<NamespaceResponse.Namespace> otherUsersSpaces;
+        if (otherUsersSpace == null) {
+            otherUsersSpaces = null;
+        } else {
+            otherUsersSpaces = new ArrayList<NamespaceResponse.Namespace>(1);
+            otherUsersSpaces.add(new NamespaceResponse.Namespace(otherUsersSpace, MailboxConstants.DEFAULT_DELIMITER));
+        }
+        return otherUsersSpaces;
+    }
+    
+    private List<NamespaceResponse.Namespace> buildSharedNamespaces(final MailboxSession mailboxSession) {
+        List<NamespaceResponse.Namespace> sharedNamespaces = null;
+        final Collection<String> sharedSpaces = mailboxSession.getSharedSpaces();
+        if (!sharedSpaces.isEmpty()) {
+            sharedNamespaces = new ArrayList<NamespaceResponse.Namespace>(sharedSpaces.size());
+            for (String space: sharedSpaces) {
+                sharedNamespaces.add(new NamespaceResponse.Namespace(space, MailboxConstants.DEFAULT_DELIMITER));
+            }    
+        }
+        return sharedNamespaces;
+    }
+
     @Override
     protected boolean isAcceptable(ImapMessage message) {
         return message instanceof NamespaceRequest;
Index: message/src/main/java/org/apache/james/imap/message/response/NamespaceResponse.java
===================================================================
--- message/src/main/java/org/apache/james/imap/message/response/NamespaceResponse.java	(Revision 960698)
+++ message/src/main/java/org/apache/james/imap/message/response/NamespaceResponse.java	(Arbeitskopie)
@@ -74,21 +74,21 @@
     public static final class Namespace {
         private final String prefix;
 
-        private final char deliminator;
+        private final char delimiter;
 
-        public Namespace(final String prefix, final char deliminator) {
+        public Namespace(final String prefix, final char delimiter) {
             super();
             this.prefix = prefix;
-            this.deliminator = deliminator;
+            this.delimiter = delimiter;
         }
 
         /**
-         * Gets the deliminator used to separate mailboxes.
+         * Gets the delimiter used to separate mailboxes.
          * 
          * @return not null
          */
-        public char getDeliminator() {
-            return deliminator;
+        public char getDelimiter() {
+            return delimiter;
         }
 
         /**
@@ -103,7 +103,7 @@
         public int hashCode() {
             final int PRIME = 31;
             int result = 1;
-            result = PRIME * result + deliminator;
+            result = PRIME * result + delimiter;
             result = PRIME * result + ((prefix == null) ? 0 : prefix.hashCode());
             return result;
         }
@@ -117,7 +117,7 @@
             if (getClass() != obj.getClass())
                 return false;
             final Namespace other = (Namespace) obj;
-            if (deliminator != other.deliminator)
+            if (delimiter != other.delimiter)
                 return false;
             if (prefix == null) {
                 if (other.prefix != null)
@@ -129,7 +129,7 @@
         
         @Override
         public String toString() {
-            return "Namespace [prefix=" + prefix + ", delim=" + deliminator + "]";
+            return "Namespace [prefix=" + prefix + ", delim=" + delimiter + "]";
         }
     }
 
Index: message/src/main/java/org/apache/james/imap/encode/NamespaceResponseEncoder.java
===================================================================
--- message/src/main/java/org/apache/james/imap/encode/NamespaceResponseEncoder.java	(Revision 960698)
+++ message/src/main/java/org/apache/james/imap/encode/NamespaceResponseEncoder.java	(Arbeitskopie)
@@ -73,7 +73,7 @@
             throws IOException {
         composer.openParen();
         composer.quote(namespace.getPrefix());
-        composer.quote(Character.toString(namespace.getDeliminator()));
+        composer.quote(Character.toString(namespace.getDelimiter()));
         composer.closeParen();
     }
 
Index: mailbox/src/main/java/org/apache/james/imap/mailbox/util/SimpleMailboxNamespace.java
===================================================================
--- mailbox/src/main/java/org/apache/james/imap/mailbox/util/SimpleMailboxNamespace.java	(Revision 960698)
+++ mailbox/src/main/java/org/apache/james/imap/mailbox/util/SimpleMailboxNamespace.java	(Arbeitskopie)
@@ -1,52 +0,0 @@
-/****************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one   *
- * or more contributor license agreements.  See the NOTICE file *
- * distributed with this work for additional information        *
- * regarding copyright ownership.  The ASF licenses this file   *
- * to you under the Apache License, Version 2.0 (the            *
- * "License"); you may not use this file except in compliance   *
- * with the License.  You may obtain a copy of the License at   *
- *                                                              *
- *   http://www.apache.org/licenses/LICENSE-2.0                 *
- *                                                              *
- * Unless required by applicable law or agreed to in writing,   *
- * software distributed under the License is distributed on an  *
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
- * KIND, either express or implied.  See the License for the    *
- * specific language governing permissions and limitations      *
- * under the License.                                           *
- ****************************************************************/
-
-package org.apache.james.imap.mailbox.util;
-
-import org.apache.james.imap.mailbox.MailboxSession;
-
-/**
- * Immutable implementation.
- */
-public class SimpleMailboxNamespace implements MailboxSession.Namespace {
-
-    private final char deliminator;
-    private final String prefix;
-
-    public SimpleMailboxNamespace(final char deliminator, final String prefix) {
-        super();
-        this.deliminator = deliminator;
-        this.prefix = prefix;
-    }
-
-    /**
-     * @see {@link MailboxSession.Namespace#getDeliminator()}
-     */
-    public char getDeliminator() {
-        return deliminator;
-    }
-
-    /**
-     * @see {@link MailboxSession.Namespace#getPrefix()}
-     */
-    public String getPrefix() {
-        return prefix;
-    }
-
-}
Index: mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxSession.java
===================================================================
--- mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxSession.java	(Revision 960698)
+++ mailbox/src/main/java/org/apache/james/imap/mailbox/MailboxSession.java	(Arbeitskopie)
@@ -98,7 +98,7 @@
      * use cases emerge.
      * @return Personal Namespace, not null
      */
-    public Namespace getPersonalSpace();
+    public String getPersonalSpace();
     
     /**
      * Gets the <a href='http://www.isi.edu/in-notes/rfc2342.txt' rel='tag'>RFC 2342</a> 
@@ -109,14 +109,14 @@
      * @return Other Users Namespace 
      * or null when there is non available
      */
-    public Namespace getOtherUsersSpace();
+    public String getOtherUsersSpace();
     
     /**
      * Iterates the <a href='http://www.isi.edu/in-notes/rfc2342.txt' rel='tag'>RFC 2342</a>
      * Shared Namespaces available for the current session.
      * @return not null though possibly empty
      */
-    public Collection<Namespace> getSharedSpaces();
+    public Collection<String> getSharedSpaces();
     
     
     /**
@@ -126,24 +126,5 @@
      */
     public Map<Object,Object> getAttributes();
     
-    /**
-     * Describes a <a href='http://www.isi.edu/in-notes/rfc2342.txt' rel='tag'>RFC 2342</a> namespace.
-     */
-    public interface Namespace {
-        
-        /**
-         * Gets the hierachy deliminator for this namespace.
-         * @return character that delimits this hierarchy
-         */
-        public char getDeliminator();
-        
-        /**
-         * Gets the prefix for this namespace.
-         * Clients will prefix 
-         * @return not null, though may be empty
-         */
-        public String getPrefix();
-    }
     
-    
 }
