Author: norman
Date: Thu Mar 18 07:03:31 2010
New Revision: 924660
URL: http://svn.apache.org/viewvc?rev=924660&view=rev
Log:
cleanup...
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.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/mail/JCRMessageMapper.java
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRHeader.java
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailbox.java
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailboxMembership.java
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMessage.java
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRProperty.java
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/JCRSubscriptionMapper.java
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/model/JCRSubscription.java
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemorySubscriptionManager.java
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreSubscriptionManager.java
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java
(original)
+++
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/JCRMailbox.java
Thu Mar 18 07:03:31 2010
@@ -45,7 +45,6 @@ import org.apache.james.imap.store.mail.
import org.apache.james.imap.store.mail.model.Header;
import org.apache.james.imap.store.mail.model.Mailbox;
import org.apache.james.imap.store.mail.model.MailboxMembership;
-import org.apache.james.imap.store.mail.model.Property;
import org.apache.james.imap.store.mail.model.PropertyBuilder;
/**
@@ -73,10 +72,16 @@ public class JCRMailbox extends StoreMai
throw new UnsupportedOperationException("Please use getMailboxUUID for
this implementation");
}
+ /**
+ * Return the UUID of this Mailbox
+ *
+ * @return uuid
+ */
public String getMailboxUUID() {
return uuid;
}
+
@Override
protected MailboxMembership copyMessage(MailboxMembership originalMessage,
long uid) {
MailboxMembership newRow = new JCRMailboxMembership(getMailboxUUID(),
uid, (JCRMailboxMembership) originalMessage, log);
@@ -111,6 +116,13 @@ public class JCRMailbox extends StoreMai
}
+ /**
+ * Ceate a MailboxMapper for the given {...@link MailboxSession}
+ *
+ * @param session
+ * @return mailboxMapper
+ * @throws MailboxException
+ */
protected JCRMailboxMapper createMailboxMapper(MailboxSession session)
throws MailboxException {
Session jcrSession = getSession(session);
JCRUtils.addJCRSession(session, jcrSession);
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=924660&r1=924659&r2=924660&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
Thu Mar 18 07:03:31 2010
@@ -152,7 +152,7 @@ public class JCRMailboxManager extends S
/**
- * Logout from all openen JCR Sessions
+ * Logout from all opened JCR Sessions
*/
public void endProcessingRequest(MailboxSession session) {
List<Session> sessions = JCRUtils.getJCRSessions(session);
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=924660&r1=924659&r2=924660&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
Thu Mar 18 07:03:31 2010
@@ -44,11 +44,9 @@ import org.apache.james.imap.store.user.
*
*/
public class JCRSubscriptionManager extends StoreSubscriptionManager {
- private Log logger = LogFactory.getLog(JCRSubscriptionManager.class);
-
- public final static String MAPPER = "SUBSCRIPTION_MAPPER";
+ private final Log logger = LogFactory.getLog(JCRSubscriptionManager.class);
private final Repository repository;
- private String workspace;
+ private final String workspace;
public JCRSubscriptionManager(final Repository repository, final String
workspace) {
super();
@@ -103,12 +101,12 @@ public class JCRSubscriptionManager exte
return workspace;
}
+ /**
+ * Return the JCR Repository
+ *
+ * @return repository
+ */
protected Repository getRepository() {
return repository;
}
-
- @Override
- protected void onLogout(MailboxSession session) {
-
- }
}
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=924660&r1=924659&r2=924660&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
Thu Mar 18 07:03:31 2010
@@ -33,54 +33,53 @@ import org.apache.james.imap.mailbox.Mai
public class JCRUtils implements JCRImapConstants{
/**
- * Identifier of stored JCR Session
+ * Identifier of stored JCR Session
*/
public final static String JCR_SESSIONS = "JCR_SESSIONS";
-
+
/**
* Create a path which can be used for nodes. It handles the escaping etc
*
* @param subNodes
* @return completePath
*/
- public static String createPath(String... subNodes) {
- StringBuffer pathBuf = new StringBuffer();
-
- 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));
-
- if (i +1 != subNodes.length) {
- pathBuf.append(NODE_DELIMITER);
- }
- }
+ public static String createPath(String... subNodes) {
+ StringBuffer pathBuf = new StringBuffer();
+
+ 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));
+
+ if (i + 1 != subNodes.length) {
+ pathBuf.append(NODE_DELIMITER);
+ }
+ }
return pathBuf.toString();
-
- }
-
- /**
- * Return a List of JCR Sessions for the given MailboxSession
- *
- * @param session
- * @return jcrSessionList
- */
- @SuppressWarnings("unchecked")
+
+ }
+
+ /**
+ * Return a List of JCR Sessions for the given MailboxSession
+ *
+ * @param session
+ * @return jcrSessionList
+ */
+ @SuppressWarnings("unchecked")
public static List<Session> getJCRSessions(MailboxSession session) {
- List<Session> sessions = null;
- if (session != null) {
- sessions = (List<Session>)
session.getAttributes().get(JCR_SESSIONS);
- }
- if (sessions == null) {
- sessions = new ArrayList<Session>();
- }
- return sessions;
- }
-
+ List<Session> sessions = null;
+ if (session != null) {
+ sessions = (List<Session>)
session.getAttributes().get(JCR_SESSIONS);
+ }
+ if (sessions == null) {
+ sessions = new ArrayList<Session>();
+ }
+ return sessions;
+ }
+
/**
* Add the JCR Session to the MailboxSession
* @param session
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=924660&r1=924659&r2=924660&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
Thu Mar 18 07:03:31 2010
@@ -50,7 +50,7 @@ import org.apache.james.imap.store.mail.
public class JCRMailboxMapper extends AbstractJCRMapper implements
MailboxMapper {
public final String PATH = PROPERTY_PREFIX + "mailboxes";
- private Log logger;
+ private final Log logger;
public JCRMailboxMapper(final Session session, final Log logger) {
super(session);
@@ -243,6 +243,14 @@ public class JCRMailboxMapper extends Ab
}
}
+ /**
+ * Consume the next uid for the {...@link Mailbox} with the given uuid
+ *
+ * @param uuid
+ * @return mailbox
+ * @throws StorageException
+ * @throws MailboxNotFoundException
+ */
public Mailbox consumeNextUid(String uuid) throws StorageException,
MailboxNotFoundException {
final JCRMailbox mailbox = (JCRMailbox) findMailboxByUUID(uuid);
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java
(original)
+++
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMessageMapper.java
Thu Mar 18 07:03:31 2010
@@ -163,12 +163,6 @@ public class JCRMessageMapper extends Ab
results = findMessagesInMailboxBetweenUIDs(uuid, from, to);
break;
}
- /*
- for (int i = 0; i < results.size(); i++) {
- System.out.println("FOUND=" + results.get(i).getUid() + "
TYPE="+ type.toString());
-
- }
-*/
return results;
} catch (RepositoryException e) {
e.printStackTrace();
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRHeader.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRHeader.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRHeader.java
(original)
+++
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRHeader.java
Thu Mar 18 07:03:31 2010
@@ -183,8 +183,7 @@ public class JCRHeader extends AbstractC
return true;
}
- public String toString()
- {
+ public String toString() {
final String retValue = "Header ( "
+ "UUID = " + this.getUUID() + TOSTRING_SEP
+ "lineNumber = " + this.getLineNumber() + TOSTRING_SEP
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailbox.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailbox.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailbox.java
(original)
+++
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailbox.java
Thu Mar 18 07:03:31 2010
@@ -192,8 +192,7 @@ public class JCRMailbox implements Mailb
}
@Override
- public String toString()
- {
+ public String toString() {
final String retValue = "Mailbox ( "
+ "mailboxUID = " + this.getUUID() + TAB
+ "name = " + this.getName() + TAB
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailboxMembership.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailboxMembership.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailboxMembership.java
(original)
+++
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMailboxMembership.java
Thu Mar 18 07:03:31 2010
@@ -508,8 +508,7 @@ public class JCRMailboxMembership extend
return true;
}
- public String toString()
- {
+ public String toString() {
final String retValue =
"mailbox("
+ "mailboxUUID = " + this.getMailboxUUID() + TOSTRING_SEPARATOR
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMessage.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMessage.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMessage.java
(original)
+++
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRMessage.java
Thu Mar 18 07:03:31 2010
@@ -421,8 +421,7 @@ public class JCRMessage extends Abstract
return true;
}
- public String toString()
- {
+ public String toString() {
final String retValue =
"message("
+ "uuid = " + getUUID()
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRProperty.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRProperty.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRProperty.java
(original)
+++
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/model/JCRProperty.java
Thu Mar 18 07:03:31 2010
@@ -213,8 +213,7 @@ public class JCRProperty extends Abstrac
* @return a <code>String</code> representation
* of this object.
*/
- public String toString()
- {
+ public String toString() {
final String result = "Property ( "
+ "uuid = " + this.getUUID() + " "
+ "localName = " + this.getLocalName() + " "
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=924660&r1=924659&r2=924660&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
Thu Mar 18 07:03:31 2010
@@ -41,9 +41,7 @@ import org.apache.james.imap.store.user.
import org.apache.james.imap.store.user.model.Subscription;
/**
- * JCR implementation of a SubscriptionManager. Just be aware, this
- * SubscriptionManager doesn't support transactions. So very call on a method
- * ends in a "real" action
+ * JCR implementation of a SubscriptionManager
*
*/
public class JCRSubscriptionMapper extends AbstractJCRMapper implements
SubscriptionMapper {
@@ -88,13 +86,23 @@ public class JCRSubscriptionMapper exten
*/
public Subscription findFindMailboxSubscriptionForUser(String user, String
mailbox) throws SubscriptionException {
try {
- Node node =
getSession().getRootNode().getNode(JCRUtils.createPath(PATH, user, mailbox));
- return new JCRSubscription(node, log);
+ String queryString = "//" + PATH + "//element(*)[@" +
JCRSubscription.USERNAME_PROPERTY + "='" + user + "'] AND [@" +
JCRSubscription.MAILBOX_PROPERTY +"='" + mailbox + "']";
+
+ QueryManager manager =
getSession().getWorkspace().getQueryManager();
+ QueryResult result = manager.createQuery(queryString,
Query.XPATH).execute();
+
+ NodeIterator nodeIt = result.getNodes();
+ if (nodeIt.hasNext()) {
+ new JCRSubscription(nodeIt.nextNode(), log);
+ }
+
} catch (PathNotFoundException e) {
- return null;
+ // nothing todo here
} catch (RepositoryException e) {
throw new SubscriptionException(HumanReadableText.SEARCH_FAILED,
e);
}
+ return null;
+
}
/*
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/model/JCRSubscription.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/model/JCRSubscription.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/model/JCRSubscription.java
(original)
+++
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/user/model/JCRSubscription.java
Thu Mar 18 07:03:31 2010
@@ -160,8 +160,7 @@ public class JCRSubscription implements
*
* @return output suitable for debugging
*/
- public String toString()
- {
+ public String toString() {
final String result = "Subscription ( "
+ "uuid = " + this.getUUID() + TOSTRING_SEPARATOR
+ "user = " + this.getUser() + TOSTRING_SEPARATOR
Modified:
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemorySubscriptionManager.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemorySubscriptionManager.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemorySubscriptionManager.java
(original)
+++
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/InMemorySubscriptionManager.java
Thu Mar 18 07:03:31 2010
@@ -167,17 +167,11 @@ public class InMemorySubscriptionManager
}
+ /*
+ * (non-Javadoc)
+ * @see
org.apache.james.imap.store.transaction.TransactionalMapper#execute(org.apache.james.imap.store.transaction.TransactionalMapper.Transaction)
+ */
public void execute(Transaction transaction) throws MailboxException {
transaction.run();
}
-
- public void destroy() {
- // Nothing todo
- }
-
- @Override
- protected void onLogout(MailboxSession session) {
- // Nothing todo
-
- }
}
Modified:
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreSubscriptionManager.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreSubscriptionManager.java?rev=924660&r1=924659&r2=924660&view=diff
==============================================================================
---
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreSubscriptionManager.java
(original)
+++
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreSubscriptionManager.java
Thu Mar 18 07:03:31 2010
@@ -117,6 +117,4 @@ public abstract class StoreSubscriptionM
throw (SubscriptionException) e;
}
}
-
- protected abstract void onLogout(MailboxSession session);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]