Author: norman
Date: Fri Jun 25 13:36:07 2010
New Revision: 957939
URL: http://svn.apache.org/viewvc?rev=957939&view=rev
Log:
Remove of MailboxMapper.countMailboxesWithName() method. Its not needed
(IMAP-164). Thx to Tim-Christian Mundt for the patch
Modified:
james/imap/trunk/jcr/src/main/java/org/apache/james/imap/jcr/mail/JCRMailboxMapper.java
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMailboxMapper.java
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/JPAMailbox.java
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/mail/InMemoryMailboxMapper.java
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/StoreMailboxManager.java
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MailboxMapper.java
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=957939&r1=957938&r2=957939&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
Fri Jun 25 13:36:07 2010
@@ -62,37 +62,6 @@ public class JCRMailboxMapper extends Ab
* (non-Javadoc)
*
* @see
- * org.apache.james.imap.store.mail.MailboxMapper#countMailboxesWithName
- * (java.lang.String)
- */
- public long countMailboxesWithName(String name) throws StorageException {
-
- try {
- QueryManager manager =
getSession().getWorkspace().getQueryManager();
- String queryString = "/jcr:root/"+ MAILBOXES_PATH +
"//element(*,jamesMailbox:mailbox)[@" + JCRMailbox.NAME_PROPERTY + "='" + name
+ "'] order by @"+ JCRMailbox.NAME_PROPERTY;
- QueryResult result = manager.createQuery(queryString,
Query.XPATH).execute();
- NodeIterator it = result.getNodes();
- long resultSize = it.getSize();
- if (resultSize == -1) {
- resultSize = 0;
- while (it.hasNext()) {
- it.nextNode();
- resultSize++;
- }
- }
- return resultSize;
- } catch (PathNotFoundException e) {
- // not found
- } catch (RepositoryException e) {
- throw new StorageException(HumanReadableText.COUNT_FAILED, e);
- }
- return 0;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see
* org.apache.james.imap.store.mail.MailboxMapper#delete(org.apache.james
* .imap.store.mail.model.Mailbox)
*/
Modified:
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMailboxMapper.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMailboxMapper.java?rev=957939&r1=957938&r2=957939&view=diff
==============================================================================
---
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMailboxMapper.java
(original)
+++
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/JPAMailboxMapper.java
Fri Jun 25 13:36:07 2010
@@ -92,7 +92,7 @@ public class JPAMailboxMapper extends JP
return
getEntityManager().createNamedQuery("findMailboxWithNameLike").setParameter("nameParam",
SQL_WILDCARD_CHAR + name + SQL_WILDCARD_CHAR).getResultList();
} catch (PersistenceException e) {
throw new StorageException(HumanReadableText.SEARCH_FAILED, e);
- }
+ }
}
/**
@@ -107,17 +107,6 @@ public class JPAMailboxMapper extends JP
}
/**
- * @see
org.apache.james.imap.store.mail.MailboxMapper#countMailboxesWithName(java.lang.String)
- */
- public long countMailboxesWithName(String name) throws StorageException {
- try {
- return (Long)
getEntityManager().createNamedQuery("countMailboxesWithName").setParameter("nameParam",
name).getSingleResult();
- } catch (PersistenceException e) {
- throw new StorageException(HumanReadableText.COUNT_FAILED, e);
- }
- }
-
- /**
* @see
org.apache.james.imap.store.mail.MailboxMapper#findMailboxById(long)
*/
public Mailbox<Long> findMailboxById(Long mailboxId) throws
StorageException, MailboxNotFoundException {
Modified:
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/JPAMailbox.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/JPAMailbox.java?rev=957939&r1=957938&r2=957939&view=diff
==============================================================================
---
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/JPAMailbox.java
(original)
+++
james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/JPAMailbox.java
Fri Jun 25 13:36:07 2010
@@ -33,8 +33,6 @@ import org.apache.james.imap.store.mail.
query="SELECT mailbox FROM Mailbox mailbox WHERE mailbox.mailboxId =
:idParam"),
@NamedQuery(name="findMailboxByName",
query="SELECT mailbox FROM Mailbox mailbox WHERE mailbox.name =
:nameParam"),
- @NamedQuery(name="countMailboxesWithName",
- query="SELECT COUNT(mailbox) FROM Mailbox mailbox WHERE mailbox.name =
:nameParam"),
@NamedQuery(name="deleteAll",
query="DELETE FROM Mailbox mailbox"),
@NamedQuery(name="findMailboxWithNameLike",
Modified:
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/mail/InMemoryMailboxMapper.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/mail/InMemoryMailboxMapper.java?rev=957939&r1=957938&r2=957939&view=diff
==============================================================================
---
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/mail/InMemoryMailboxMapper.java
(original)
+++
james/imap/trunk/memory/src/main/java/org/apache/james/imap/inmemory/mail/InMemoryMailboxMapper.java
Fri Jun 25 13:36:07 2010
@@ -43,20 +43,6 @@ public class InMemoryMailboxMapper imple
/*
* (non-Javadoc)
- * @see
org.apache.james.imap.store.mail.MailboxMapper#countMailboxesWithName(java.lang.String)
- */
- public long countMailboxesWithName(String name) throws StorageException {
- int total = 0;
- for (final InMemoryMailbox mailbox:mailboxesById.values()) {
- if (mailbox.getName().equals(name)) {
- total++;
- }
- }
- return total;
- }
-
- /*
- * (non-Javadoc)
* @see
org.apache.james.imap.store.mail.MailboxMapper#delete(org.apache.james.imap.store.mail.model.Mailbox)
*/
public void delete(Mailbox<Long> mailbox) throws StorageException {
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=957939&r1=957938&r2=957939&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 Jun 25 13:36:07 2010
@@ -28,7 +28,6 @@ import java.util.Random;
import org.apache.commons.logging.Log;
import org.apache.james.imap.api.AbstractLogEnabled;
-import org.apache.james.imap.api.display.HumanReadableText;
import org.apache.james.imap.mailbox.BadCredentialsException;
import org.apache.james.imap.mailbox.MailboxException;
import org.apache.james.imap.mailbox.MailboxExistsException;
@@ -335,23 +334,17 @@ public abstract class StoreMailboxManage
*/
public boolean mailboxExists(String mailboxName, MailboxSession session)
throws MailboxException {
synchronized (mutex) {
- final MailboxMapper<Id> mapper =
mailboxSessionMapperFactory.getMailboxMapper(session);
- final long count = mapper.countMailboxesWithName(mailboxName);
- if (count == 0) {
+ try {
+ final MailboxMapper<Id> mapper =
mailboxSessionMapperFactory.getMailboxMapper(session);
+ mapper.findMailboxByName(mailboxName);
+ return true;
+ }
+ catch (MailboxNotFoundException e) {
return false;
- } else {
- if (count == 1) {
- return true;
- } else {
- throw new
MailboxException(HumanReadableText.DUPLICATE_MAILBOXES,
- "Expected one mailbox but found " + count + "
mailboxes");
- }
}
}
}
-
-
/*
* (non-Javadoc)
* @see
org.apache.james.imap.mailbox.MailboxManager#createSystemSession(java.lang.String,
org.apache.commons.logging.Log)
@@ -360,7 +353,6 @@ public abstract class StoreMailboxManage
return createSession(userName, null, log);
}
-
/**
* Create Session
*
@@ -372,7 +364,6 @@ public abstract class StoreMailboxManage
return new SimpleMailboxSession(randomId(), userName, password, log,
delimiter, new ArrayList<Locale>());
}
-
/**
* Generate and return the next id to use
*
@@ -440,7 +431,6 @@ public abstract class StoreMailboxManage
delegatingListener.addListener(mailboxName, listener);
}
-
/*
* (non-Javadoc)
* @see
org.apache.james.imap.mailbox.MailboxManager#login(java.lang.String,
java.lang.String, org.apache.commons.logging.Log)
@@ -476,7 +466,6 @@ public abstract class StoreMailboxManage
return USER_NAMESPACE_PREFIX;
}
-
/**
* End processing of Request for session
*/
@@ -484,7 +473,6 @@ public abstract class StoreMailboxManage
mailboxSessionMapperFactory.endRequest(session);
}
-
/**
* Start processing of Request for session. Default is to do nothing.
* Implementations should override this if they need to do anything special
@@ -492,6 +480,5 @@ public abstract class StoreMailboxManage
public void startProcessingRequest(MailboxSession session) {
// Default do nothing
}
-
-
+
}
Modified:
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MailboxMapper.java
URL:
http://svn.apache.org/viewvc/james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MailboxMapper.java?rev=957939&r1=957938&r2=957939&view=diff
==============================================================================
---
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MailboxMapper.java
(original)
+++
james/imap/trunk/store/src/main/java/org/apache/james/imap/store/mail/MailboxMapper.java
Fri Jun 25 13:36:07 2010
@@ -56,16 +56,6 @@ public interface MailboxMapper<Id> exten
public abstract void deleteAll() throws StorageException;
/**
- * Return the count of {...@link Mailbox} objects with the given name
- *
- * @param name
- * @return count
- * @throws StorageException
- */
- public abstract long countMailboxesWithName(String name)
- throws StorageException;
-
- /**
* Return the {...@link Mailbox} for the given name
*
* @param name
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]