Author: norman Date: Sat Mar 27 16:56:50 2010 New Revision: 928230 URL: http://svn.apache.org/viewvc?rev=928230&view=rev Log: Fix the node escape stuff.. This shows that the current scaling stuff does not work as aspected. So use MIN_SCALING for now.. This needs to get fixed..
Modified: james/imap/trunk/deployment/src/test/java/org/apache/james/imap/functional/jcr/JCRHostSystem.java james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailboxManager.java james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRSubscriptionManager.java james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRUtils.java james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMailboxMapper.java james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/JCRSubscriptionMapper.java Modified: james/imap/trunk/deployment/src/test/java/org/apache/james/imap/functional/jcr/JCRHostSystem.java URL: http://svn.apache.org/viewvc/james/imap/trunk/deployment/src/test/java/org/apache/james/imap/functional/jcr/JCRHostSystem.java?rev=928230&r1=928229&r2=928230&view=diff ============================================================================== --- james/imap/trunk/deployment/src/test/java/org/apache/james/imap/functional/jcr/JCRHostSystem.java (original) +++ james/imap/trunk/deployment/src/test/java/org/apache/james/imap/functional/jcr/JCRHostSystem.java Sat Mar 27 16:56:50 2010 @@ -28,6 +28,7 @@ import org.apache.james.imap.functional. import org.apache.james.imap.functional.InMemoryUserManager; import org.apache.james.imap.jcr.JCRGlobalUserMailboxManager; import org.apache.james.imap.jcr.JCRGlobalUserSubscriptionManager; +import org.apache.james.imap.jcr.JCRImapConstants; import org.apache.james.imap.jcr.JCRUtils; import org.apache.james.imap.main.DefaultImapDecoderFactory; import org.apache.james.imap.processor.main.DefaultImapProcessorFactory; @@ -65,7 +66,8 @@ public class JCRHostSystem extends ImapH userManager = new InMemoryUserManager(); - mailboxManager = new JCRGlobalUserMailboxManager(userManager, new JCRGlobalUserSubscriptionManager(repository, workspace, user, pass), repository, workspace, user, pass); + //TODO: Fix the scaling stuff so the tests will pass with max scaling too + mailboxManager = new JCRGlobalUserMailboxManager(userManager, new JCRGlobalUserSubscriptionManager(repository, workspace, user, pass, JCRImapConstants.MIN_SCALING), repository, workspace, user, pass, JCRImapConstants.MIN_SCALING); final DefaultImapProcessorFactory defaultImapProcessorFactory = new DefaultImapProcessorFactory(); resetUserMetaData(); Modified: james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailboxManager.java URL: http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailboxManager.java?rev=928230&r1=928229&r2=928230&view=diff ============================================================================== --- james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailboxManager.java (original) +++ james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailboxManager.java Sat Mar 27 16:56:50 2010 @@ -67,7 +67,7 @@ public class JCRMailboxManager extends S public JCRMailboxManager(final Authenticator authenticator, final Subscriber subscriber, final Repository repository, final String workspace) { - this(authenticator, subscriber, repository, workspace, MAX_SCALING); + this(authenticator, subscriber, repository, workspace, MIN_SCALING); } /** Modified: james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRSubscriptionManager.java URL: http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRSubscriptionManager.java?rev=928230&r1=928229&r2=928230&view=diff ============================================================================== --- james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRSubscriptionManager.java (original) +++ james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRSubscriptionManager.java Sat Mar 27 16:56:50 2010 @@ -58,7 +58,7 @@ public class JCRSubscriptionManager exte public JCRSubscriptionManager(final Repository repository, final String workspace) { - this(repository, workspace, MAX_SCALING); + this(repository, workspace, MIN_SCALING); } Modified: james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRUtils.java URL: http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRUtils.java?rev=928230&r1=928229&r2=928230&view=diff ============================================================================== --- james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRUtils.java (original) +++ james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRUtils.java Sat Mar 27 16:56:50 2010 @@ -83,7 +83,7 @@ public class JCRUtils implements JCRImap String[] pathParts = path.split(NODE_DELIMITER); for (int a = 0; a < pathParts.length; a++) { - String subPath = pathParts[a]; + String subPath =escape(pathParts[a]); for (int i = 0; i < subPath.length(); i++) { @@ -106,6 +106,10 @@ public class JCRUtils implements JCRImap return buffer.toString(); } } + + public static String escape(String string) { + return Text.escapeIllegalJcrChars(string); + } public static String createScaledPath(String[] paths, int scaling) { StringBuffer sb = new StringBuffer(); @@ -143,7 +147,7 @@ public class JCRUtils implements JCRImap Node parent = rootNode; String nodeNames[] = nodePath.split(NODE_DELIMITER); for (int i = 0; i < nodeNames.length; i++) { - String nodeName = Text.escapeIllegalJcrChars(nodeNames[i]); + String nodeName = escape(nodeNames[i]); if (parent.hasNode(nodeName)) { parent = parent.getNode(nodeName); } else { @@ -167,11 +171,7 @@ public class JCRUtils implements JCRImap for (int i = 0; i < subNodes.length; i++) { String path = subNodes[i]; - /* - * if (path.startsWith(PROPERTY_PREFIX) == false) { - * pathBuf.append(PROPERTY_PREFIX); } - */ - pathBuf.append(Text.escapeIllegalJcrChars(path)); + pathBuf.append(escape(path)); if (i + 1 != subNodes.length) { pathBuf.append(NODE_DELIMITER); Modified: james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMailboxMapper.java URL: http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMailboxMapper.java?rev=928230&r1=928229&r2=928230&view=diff ============================================================================== --- james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMailboxMapper.java (original) +++ james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMailboxMapper.java Sat Mar 27 16:56:50 2010 @@ -225,7 +225,7 @@ public class JCRMailboxMapper extends Ab node = getSession().getNodeByUUID(jcrMailbox.getMailboxId()); } if (node == null) { - String nodePath = JCRUtils.escapePath(PATH,JCRUtils.createScaledPath(mailbox.getName(), getScaling())); + String nodePath = PATH + NODE_DELIMITER + JCRUtils.createScaledPath(mailbox.getName(), getScaling()); node = JCRUtils.createNodeRecursive(getSession().getRootNode(), nodePath, "imap:mailbox"); node.addMixin(JcrConstants.MIX_REFERENCEABLE); Modified: james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/JCRSubscriptionMapper.java URL: http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/JCRSubscriptionMapper.java?rev=928230&r1=928229&r2=928230&view=diff ============================================================================== --- james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/JCRSubscriptionMapper.java (original) +++ james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/JCRSubscriptionMapper.java Sat Mar 27 16:56:50 2010 @@ -153,7 +153,7 @@ public class JCRSubscriptionMapper exten // its a new subscription if (sub == null) { - String nodePath = JCRUtils.escapePath(PATH,JCRUtils.createScaledPath(new String[] {username, mailbox}, getScaling())); + String nodePath = PATH + NODE_DELIMITER + JCRUtils.createScaledPath(new String[] {username, mailbox}, getScaling()); node = JCRUtils.createNodeRecursive(getSession().getRootNode(), nodePath, "imap:subscription"); } else { --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org