You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by no...@apache.org on 2010/06/22 19:05:28 UTC

svn commit: r956955 - in /james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail: JPAMailboxMapper.java model/AbstractJPAMailboxMembership.java

Author: norman
Date: Tue Jun 22 17:05:28 2010
New Revision: 956955

URL: http://svn.apache.org/viewvc?rev=956955&view=rev
Log:
Delete Messages when Mailbox was delete in JPA implementation (IMAP-158)

Modified:
    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/AbstractJPAMailboxMembership.java

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=956955&r1=956954&r2=956955&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 Tue Jun 22 17:05:28 2010
@@ -77,6 +77,7 @@ public class JPAMailboxMapper extends JP
     public void delete(Mailbox<Long> mailbox) throws StorageException {
         try {  
             getEntityManager().remove(mailbox);
+            getEntityManager().createNamedQuery("deleteMessages").setParameter("idParam", mailbox.getMailboxId()).executeUpdate();
         } catch (PersistenceException e) {
             throw new StorageException(HumanReadableText.DELETED_FAILED, e);
         } 

Modified: james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/AbstractJPAMailboxMembership.java
URL: http://svn.apache.org/viewvc/james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/AbstractJPAMailboxMembership.java?rev=956955&r1=956954&r2=956955&view=diff
==============================================================================
--- james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/AbstractJPAMailboxMembership.java (original)
+++ james/imap/trunk/jpa/src/main/java/org/apache/james/imap/jpa/mail/model/AbstractJPAMailboxMembership.java Tue Jun 22 17:05:28 2010
@@ -62,7 +62,9 @@ import org.apache.james.imap.store.mail.
     @NamedQuery(name="countUnseenMessagesInMailbox",
             query="SELECT COUNT(membership) FROM Membership membership WHERE membership.mailboxId = :idParam AND membership.seen=FALSE"),                     
     @NamedQuery(name="countMessagesInMailbox",
-            query="SELECT COUNT(membership) FROM Membership membership WHERE membership.mailboxId = :idParam")                     
+            query="SELECT COUNT(membership) FROM Membership membership WHERE membership.mailboxId = :idParam"),                    
+    @NamedQuery(name="deleteMessages",
+            query="DELETE FROM Membership membership WHERE membership.mailboxId = :idParam") 
 })
 public abstract class AbstractJPAMailboxMembership extends AbstractMailboxMembership<Long> {
 



---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org