Author: eric Date: Sun Dec 26 11:16:06 2010 New Revision: 1052872 URL: http://svn.apache.org/viewvc?rev=1052872&view=rev Log: set mailboxmanager is base class and implement abstract createMailboxManager
Modified: james/mailbox/trunk/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java james/mailbox/trunk/jcr/src/test/java/org/apache/james/mailbox/jcr/JCRMailboxManagerTest.java james/mailbox/trunk/jpa/src/test/java/org/apache/james/mailbox/jpa/JPAMailboxManagerTest.java james/mailbox/trunk/maildir/src/test/java/org/apache/james/mailbox/functional/maildir/MaildirMailboxManagerTest.java Modified: james/mailbox/trunk/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java URL: http://svn.apache.org/viewvc/james/mailbox/trunk/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java?rev=1052872&r1=1052871&r2=1052872&view=diff ============================================================================== --- james/mailbox/trunk/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java (original) +++ james/mailbox/trunk/api/src/test/java/org/apache/james/mailbox/MailboxManagerTest.java Sun Dec 26 11:16:06 2010 @@ -166,9 +166,18 @@ public abstract class MailboxManagerTest } /** + * Implement this method to create the mailboxManager. + * + * @return + */ + protected abstract void createMailboxManager(); + + /** * Setter to inject the mailboxManager. */ - protected abstract void setMailboxManager(MailboxManager mailboxManager); + protected void setMailboxManager(MailboxManager mailboxManager) { + this.mailboxManager = mailboxManager; + } /** * Accessor to the mailboxManager. Modified: james/mailbox/trunk/jcr/src/test/java/org/apache/james/mailbox/jcr/JCRMailboxManagerTest.java URL: http://svn.apache.org/viewvc/james/mailbox/trunk/jcr/src/test/java/org/apache/james/mailbox/jcr/JCRMailboxManagerTest.java?rev=1052872&r1=1052871&r2=1052872&view=diff ============================================================================== --- james/mailbox/trunk/jcr/src/test/java/org/apache/james/mailbox/jcr/JCRMailboxManagerTest.java (original) +++ james/mailbox/trunk/jcr/src/test/java/org/apache/james/mailbox/jcr/JCRMailboxManagerTest.java Sun Dec 26 11:16:06 2010 @@ -20,12 +20,16 @@ package org.apache.james.mailbox.jcr; import java.io.File; +import javax.jcr.RepositoryException; + +import junit.framework.Assert; + import org.apache.commons.logging.impl.SimpleLog; import org.apache.jackrabbit.core.RepositoryImpl; +import org.apache.jackrabbit.core.config.ConfigurationException; import org.apache.jackrabbit.core.config.RepositoryConfig; import org.apache.james.mailbox.BadCredentialsException; import org.apache.james.mailbox.MailboxException; -import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.MailboxManagerTest; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.jcr.mail.JCRCachingUidProvider; @@ -51,24 +55,7 @@ public class JCRMailboxManagerTest exten */ @Before public void setup() throws Exception { - - new File(JACKRABBIT_HOME).delete(); - - String user = "user"; - String pass = "pass"; - String workspace = null; - RepositoryConfig config = RepositoryConfig.create(new InputSource(JCRMailboxManagerTest.class.getClassLoader().getResourceAsStream("test-repository.xml")), JACKRABBIT_HOME); - repository = RepositoryImpl.create(config); - - // Register imap cnd file - JCRUtils.registerCnd(repository, workspace, user, pass); - MailboxSessionJCRRepository sessionRepos = new GlobalMailboxSessionJCRRepository(repository, workspace, user, pass); - - JCRCachingUidProvider uidProvider = new JCRCachingUidProvider(sessionRepos); - - JCRMailboxSessionMapperFactory mf = new JCRMailboxSessionMapperFactory(sessionRepos); - setMailboxManager(new JCRMailboxManager(mf, null, uidProvider)); - + createMailboxManager(); } @@ -84,10 +71,36 @@ public class JCRMailboxManagerTest exten } /* (non-Javadoc) - * @see org.apache.james.mailbox.MailboxManagerTest#setMailboxManager(org.apache.james.mailbox.MailboxManager) + * @see org.apache.james.mailbox.MailboxManagerTest#createMailboxManager() */ - protected void setMailboxManager(MailboxManager mailboxManager) { - this.mailboxManager = mailboxManager; + protected void createMailboxManager() { + + new File(JACKRABBIT_HOME).delete(); + + String user = "user"; + String pass = "pass"; + String workspace = null; + RepositoryConfig config; + try { + config = RepositoryConfig.create(new InputSource(JCRMailboxManagerTest.class.getClassLoader().getResourceAsStream("test-repository.xml")), JACKRABBIT_HOME); + repository = RepositoryImpl.create(config); + } catch (ConfigurationException e) { + e.printStackTrace(); + Assert.fail(); + } catch (RepositoryException e) { + e.printStackTrace(); + Assert.fail(); + } + + // Register imap cnd file + JCRUtils.registerCnd(repository, workspace, user, pass); + MailboxSessionJCRRepository sessionRepos = new GlobalMailboxSessionJCRRepository(repository, workspace, user, pass); + + JCRCachingUidProvider uidProvider = new JCRCachingUidProvider(sessionRepos); + + JCRMailboxSessionMapperFactory mf = new JCRMailboxSessionMapperFactory(sessionRepos); + setMailboxManager(new JCRMailboxManager(mf, null, uidProvider)); + } } Modified: james/mailbox/trunk/jpa/src/test/java/org/apache/james/mailbox/jpa/JPAMailboxManagerTest.java URL: http://svn.apache.org/viewvc/james/mailbox/trunk/jpa/src/test/java/org/apache/james/mailbox/jpa/JPAMailboxManagerTest.java?rev=1052872&r1=1052871&r2=1052872&view=diff ============================================================================== --- james/mailbox/trunk/jpa/src/test/java/org/apache/james/mailbox/jpa/JPAMailboxManagerTest.java (original) +++ james/mailbox/trunk/jpa/src/test/java/org/apache/james/mailbox/jpa/JPAMailboxManagerTest.java Sun Dec 26 11:16:06 2010 @@ -25,7 +25,6 @@ import javax.persistence.EntityManagerFa import org.apache.commons.logging.impl.SimpleLog; import org.apache.james.mailbox.BadCredentialsException; import org.apache.james.mailbox.MailboxException; -import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.MailboxManagerTest; import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.jpa.mail.JPACachingUidProvider; @@ -59,7 +58,28 @@ public class JPAMailboxManagerTest exten */ @Before public void setup() throws Exception { + createMailboxManager(); + } + /** + * Close the system session and entityManagerFactory + * + * @throws MailboxException + * @throws BadCredentialsException + */ + @After + public void tearDown() throws BadCredentialsException, MailboxException { + MailboxSession session = getMailboxManager().createSystemSession("test", new SimpleLog("Test")); + session.close(); + entityManagerFactory.close(); + } + + /* (non-Javadoc) + * @see org.apache.james.mailbox.MailboxManagerTest#createMailboxManager() + */ + @Override + protected void createMailboxManager() { + HashMap<String, String> properties = new HashMap<String, String>(); properties.put("openjpa.ConnectionDriverName", "org.h2.Driver"); properties.put("openjpa.ConnectionURL", "jdbc:h2:mem:imap;DB_CLOSE_DELAY=-1"); @@ -83,25 +103,5 @@ public class JPAMailboxManagerTest exten setMailboxManager(new OpenJPAMailboxManager(mf, null, uidProvider)); } - - /** - * Close the system session and entityManagerFactory - * - * @throws MailboxException - * @throws BadCredentialsException - */ - @After - public void tearDown() throws BadCredentialsException, MailboxException { - MailboxSession session = getMailboxManager().createSystemSession("test", new SimpleLog("Test")); - session.close(); - entityManagerFactory.close(); - } - - /* (non-Javadoc) - * @see org.apache.james.mailbox.MailboxManagerTest#setMailboxManager(org.apache.james.mailbox.MailboxManager) - */ - protected void setMailboxManager(MailboxManager mailboxManager) { - this.mailboxManager = mailboxManager; - } } Modified: james/mailbox/trunk/maildir/src/test/java/org/apache/james/mailbox/functional/maildir/MaildirMailboxManagerTest.java URL: http://svn.apache.org/viewvc/james/mailbox/trunk/maildir/src/test/java/org/apache/james/mailbox/functional/maildir/MaildirMailboxManagerTest.java?rev=1052872&r1=1052871&r2=1052872&view=diff ============================================================================== --- james/mailbox/trunk/maildir/src/test/java/org/apache/james/mailbox/functional/maildir/MaildirMailboxManagerTest.java (original) +++ james/mailbox/trunk/maildir/src/test/java/org/apache/james/mailbox/functional/maildir/MaildirMailboxManagerTest.java Sun Dec 26 11:16:06 2010 @@ -26,7 +26,6 @@ import junit.framework.Assert; import org.apache.commons.io.FileUtils; import org.apache.james.mailbox.MailboxException; -import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.MailboxManagerTest; import org.apache.james.mailbox.maildir.MaildirMailboxManager; import org.apache.james.mailbox.maildir.MaildirMailboxSessionMapperFactory; @@ -94,12 +93,10 @@ public class MaildirMailboxManagerTest e e.printStackTrace(); } } - - /* (non-Javadoc) - * @see org.apache.james.mailbox.MailboxManagerTest#setMailboxManager(org.apache.james.mailbox.MailboxManager) - */ - protected void setMailboxManager(MailboxManager mailboxManager) { - this.mailboxManager = mailboxManager; + + @Override + protected void createMailboxManager() { + // Do nothing, the maildir mailboxManager is created in the test method. } } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org