Skip to content

Commit

Permalink
MAILBOX-379 Factorize PreDeletionHook execution
Browse files Browse the repository at this point in the history
Not only does it reduce code duplication but also does it ease MDC context
setting and metric recording.
  • Loading branch information
chibenwa committed Mar 14, 2019
1 parent 3e97afc commit 9506168
Show file tree
Hide file tree
Showing 34 changed files with 284 additions and 84 deletions.
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -20,19 +20,18 @@
package org.apache.james.mailbox.cassandra; package org.apache.james.mailbox.cassandra;


import java.util.EnumSet; import java.util.EnumSet;
import java.util.Set;


import javax.inject.Inject; import javax.inject.Inject;


import org.apache.james.mailbox.MailboxManager; import org.apache.james.mailbox.MailboxManager;
import org.apache.james.mailbox.MailboxPathLocker; import org.apache.james.mailbox.MailboxPathLocker;
import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.MailboxSession;
import org.apache.james.mailbox.events.EventBus; import org.apache.james.mailbox.events.EventBus;
import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.model.MailboxACL; import org.apache.james.mailbox.model.MailboxACL;
import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.model.MailboxPath;
import org.apache.james.mailbox.model.MessageId; import org.apache.james.mailbox.model.MessageId;
import org.apache.james.mailbox.store.MailboxManagerConfiguration; import org.apache.james.mailbox.store.MailboxManagerConfiguration;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.SessionProvider; import org.apache.james.mailbox.store.SessionProvider;
import org.apache.james.mailbox.store.StoreMailboxAnnotationManager; import org.apache.james.mailbox.store.StoreMailboxAnnotationManager;
import org.apache.james.mailbox.store.StoreMailboxManager; import org.apache.james.mailbox.store.StoreMailboxManager;
Expand Down Expand Up @@ -67,7 +66,7 @@ public CassandraMailboxManager(CassandraMailboxSessionMapperFactory mapperFactor
StoreMailboxAnnotationManager annotationManager, StoreRightManager storeRightManager, StoreMailboxAnnotationManager annotationManager, StoreRightManager storeRightManager,
QuotaComponents quotaComponents, MessageSearchIndex index, QuotaComponents quotaComponents, MessageSearchIndex index,
MailboxManagerConfiguration configuration, MailboxManagerConfiguration configuration,
Set<PreDeletionHook> preDeletionHooks) { PreDeletionHooks preDeletionHooks) {
super(mapperFactory, super(mapperFactory,
sessionProvider, sessionProvider,
locker, locker,
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -20,20 +20,19 @@
package org.apache.james.mailbox.cassandra; package org.apache.james.mailbox.cassandra;


import java.util.List; import java.util.List;
import java.util.Set;


import javax.mail.Flags; import javax.mail.Flags;


import org.apache.james.mailbox.MailboxPathLocker; import org.apache.james.mailbox.MailboxPathLocker;
import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.MailboxSession;
import org.apache.james.mailbox.events.EventBus; import org.apache.james.mailbox.events.EventBus;
import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.exception.MailboxException;
import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.model.MessageAttachment; import org.apache.james.mailbox.model.MessageAttachment;
import org.apache.james.mailbox.model.MessageId; import org.apache.james.mailbox.model.MessageId;
import org.apache.james.mailbox.quota.QuotaManager; import org.apache.james.mailbox.quota.QuotaManager;
import org.apache.james.mailbox.quota.QuotaRootResolver; import org.apache.james.mailbox.quota.QuotaRootResolver;
import org.apache.james.mailbox.store.BatchSizes; import org.apache.james.mailbox.store.BatchSizes;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.StoreMessageManager; import org.apache.james.mailbox.store.StoreMessageManager;
import org.apache.james.mailbox.store.StoreRightManager; import org.apache.james.mailbox.store.StoreRightManager;
import org.apache.james.mailbox.store.mail.model.Mailbox; import org.apache.james.mailbox.store.mail.model.Mailbox;
Expand All @@ -56,7 +55,7 @@ public class CassandraMessageManager extends StoreMessageManager {
QuotaRootResolver quotaRootResolver, MessageParser messageParser, MessageId.Factory messageIdFactory, QuotaRootResolver quotaRootResolver, MessageParser messageParser, MessageId.Factory messageIdFactory,
BatchSizes batchSizes, BatchSizes batchSizes,
StoreRightManager storeRightManager, StoreRightManager storeRightManager,
Set<PreDeletionHook> preDeletionHooks) { PreDeletionHooks preDeletionHooks) {
super(CassandraMailboxManager.MESSAGE_CAPABILITIES, mapperFactory, index, eventBus, locker, mailbox, super(CassandraMailboxManager.MESSAGE_CAPABILITIES, mapperFactory, index, eventBus, locker, mailbox,
quotaManager, quotaRootResolver, messageParser, messageIdFactory, batchSizes, storeRightManager, quotaManager, quotaRootResolver, messageParser, messageIdFactory, batchSizes, storeRightManager,
preDeletionHooks); preDeletionHooks);
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -26,10 +26,10 @@
import org.apache.james.mailbox.MessageManager; import org.apache.james.mailbox.MessageManager;
import org.apache.james.mailbox.events.EventBus; import org.apache.james.mailbox.events.EventBus;
import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.exception.MailboxException;
import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.model.MailboxPath;
import org.apache.james.mailbox.quota.QuotaManager; import org.apache.james.mailbox.quota.QuotaManager;
import org.apache.james.mailbox.store.CombinationManagerTestSystem; import org.apache.james.mailbox.store.CombinationManagerTestSystem;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.mail.model.Mailbox; import org.apache.james.mailbox.store.mail.model.Mailbox;


public class CassandraCombinationManagerTestSystem extends CombinationManagerTestSystem { public class CassandraCombinationManagerTestSystem extends CombinationManagerTestSystem {
Expand All @@ -40,15 +40,15 @@ public class CassandraCombinationManagerTestSystem extends CombinationManagerTes
public static CombinationManagerTestSystem createTestingData(CassandraCluster cassandra, QuotaManager quotaManager, EventBus eventBus) { public static CombinationManagerTestSystem createTestingData(CassandraCluster cassandra, QuotaManager quotaManager, EventBus eventBus) {
CassandraMailboxSessionMapperFactory mapperFactory = CassandraTestSystemFixture.createMapperFactory(cassandra); CassandraMailboxSessionMapperFactory mapperFactory = CassandraTestSystemFixture.createMapperFactory(cassandra);


return new CassandraCombinationManagerTestSystem(CassandraTestSystemFixture.createMessageIdManager(mapperFactory, quotaManager, eventBus, PreDeletionHook.NO_PRE_DELETION_HOOK), return new CassandraCombinationManagerTestSystem(CassandraTestSystemFixture.createMessageIdManager(mapperFactory, quotaManager, eventBus, PreDeletionHooks.NO_PRE_DELETION_HOOK),
mapperFactory, mapperFactory,
CassandraTestSystemFixture.createMailboxManager(mapperFactory)); CassandraTestSystemFixture.createMailboxManager(mapperFactory));
} }


private CassandraCombinationManagerTestSystem(MessageIdManager messageIdManager, CassandraMailboxSessionMapperFactory mapperFactory, MailboxManager cassandraMailboxManager) { private CassandraCombinationManagerTestSystem(MessageIdManager messageIdManager, CassandraMailboxSessionMapperFactory mapperFactory, MailboxManager cassandraMailboxManager) {
super(cassandraMailboxManager, messageIdManager); super(cassandraMailboxManager, messageIdManager);
this.mapperFactory = mapperFactory; this.mapperFactory = mapperFactory;
this.cassandraMailboxManager = (CassandraMailboxManager)cassandraMailboxManager; this.cassandraMailboxManager = (CassandraMailboxManager) cassandraMailboxManager;
} }


@Override @Override
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@


package org.apache.james.mailbox.cassandra; package org.apache.james.mailbox.cassandra;


import java.util.Set;

import org.apache.james.backends.cassandra.init.CassandraTypesProvider; import org.apache.james.backends.cassandra.init.CassandraTypesProvider;
import org.apache.james.mailbox.acl.GroupMembershipResolver; import org.apache.james.mailbox.acl.GroupMembershipResolver;
import org.apache.james.mailbox.acl.MailboxACLResolver; import org.apache.james.mailbox.acl.MailboxACLResolver;
Expand All @@ -34,12 +32,12 @@
import org.apache.james.mailbox.cassandra.quota.CassandraPerUserMaxQuotaManager; import org.apache.james.mailbox.cassandra.quota.CassandraPerUserMaxQuotaManager;
import org.apache.james.mailbox.events.InVMEventBus; import org.apache.james.mailbox.events.InVMEventBus;
import org.apache.james.mailbox.events.delivery.InVmEventDelivery; import org.apache.james.mailbox.events.delivery.InVmEventDelivery;
import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.quota.QuotaRootResolver; import org.apache.james.mailbox.quota.QuotaRootResolver;
import org.apache.james.mailbox.store.Authenticator; import org.apache.james.mailbox.store.Authenticator;
import org.apache.james.mailbox.store.Authorizator; import org.apache.james.mailbox.store.Authorizator;
import org.apache.james.mailbox.store.MailboxManagerConfiguration; import org.apache.james.mailbox.store.MailboxManagerConfiguration;
import org.apache.james.mailbox.store.NoMailboxPathLocker; import org.apache.james.mailbox.store.NoMailboxPathLocker;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.SessionProvider; import org.apache.james.mailbox.store.SessionProvider;
import org.apache.james.mailbox.store.StoreMailboxAnnotationManager; import org.apache.james.mailbox.store.StoreMailboxAnnotationManager;
import org.apache.james.mailbox.store.StoreRightManager; import org.apache.james.mailbox.store.StoreRightManager;
Expand All @@ -61,7 +59,7 @@ public class CassandraMailboxManagerProvider {
private static final int LIMIT_ANNOTATION_SIZE = 30; private static final int LIMIT_ANNOTATION_SIZE = 30;


public static CassandraMailboxManager provideMailboxManager(Session session, CassandraTypesProvider cassandraTypesProvider, public static CassandraMailboxManager provideMailboxManager(Session session, CassandraTypesProvider cassandraTypesProvider,
Set<PreDeletionHook> preDeletionHooks) { PreDeletionHooks preDeletionHooks) {
CassandraMessageId.Factory messageIdFactory = new CassandraMessageId.Factory(); CassandraMessageId.Factory messageIdFactory = new CassandraMessageId.Factory();


CassandraMailboxSessionMapperFactory mapperFactory = TestCassandraMailboxSessionMapperFactory.forTests( CassandraMailboxSessionMapperFactory mapperFactory = TestCassandraMailboxSessionMapperFactory.forTests(
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import org.apache.james.mailbox.cassandra.mail.MailboxAggregateModule; import org.apache.james.mailbox.cassandra.mail.MailboxAggregateModule;
import org.apache.james.mailbox.events.EventBus; import org.apache.james.mailbox.events.EventBus;
import org.apache.james.mailbox.extension.PreDeletionHook; import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.junit.After; import org.junit.After;
import org.junit.AfterClass; import org.junit.AfterClass;
import org.junit.Before; import org.junit.Before;
Expand All @@ -49,7 +50,7 @@ public void setup() throws Exception {


@Override @Override
protected CassandraMailboxManager provideManager() { protected CassandraMailboxManager provideManager() {
return CassandraMailboxManagerProvider.provideMailboxManager(cassandra.getConf(), cassandra.getTypesProvider(), PreDeletionHook.NO_PRE_DELETION_HOOK); return CassandraMailboxManagerProvider.provideMailboxManager(cassandra.getConf(), cassandra.getTypesProvider(), PreDeletionHooks.NO_PRE_DELETION_HOOK);
} }


@Override @Override
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import org.apache.james.mailbox.MailboxManagerTest; import org.apache.james.mailbox.MailboxManagerTest;
import org.apache.james.mailbox.cassandra.mail.MailboxAggregateModule; import org.apache.james.mailbox.cassandra.mail.MailboxAggregateModule;
import org.apache.james.mailbox.events.EventBus; import org.apache.james.mailbox.events.EventBus;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.junit.jupiter.api.extension.RegisterExtension; import org.junit.jupiter.api.extension.RegisterExtension;


public class CassandraMailboxManagerTest extends MailboxManagerTest<CassandraMailboxManager> { public class CassandraMailboxManagerTest extends MailboxManagerTest<CassandraMailboxManager> {
Expand All @@ -33,7 +34,7 @@ protected CassandraMailboxManager provideMailboxManager() {
return CassandraMailboxManagerProvider.provideMailboxManager( return CassandraMailboxManagerProvider.provideMailboxManager(
cassandra.getCassandraCluster().getConf(), cassandra.getCassandraCluster().getConf(),
cassandra.getCassandraCluster().getTypesProvider(), cassandra.getCassandraCluster().getTypesProvider(),
preDeletionHooks()); new PreDeletionHooks(preDeletionHooks()));
} }


@Override @Override
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
import org.apache.james.mailbox.quota.CurrentQuotaManager; import org.apache.james.mailbox.quota.CurrentQuotaManager;
import org.apache.james.mailbox.quota.QuotaManager; import org.apache.james.mailbox.quota.QuotaManager;
import org.apache.james.mailbox.store.MessageIdManagerTestSystem; import org.apache.james.mailbox.store.MessageIdManagerTestSystem;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.quota.ListeningCurrentQuotaUpdater; import org.apache.james.mailbox.store.quota.ListeningCurrentQuotaUpdater;
import org.apache.james.mailbox.store.quota.StoreCurrentQuotaManager; import org.apache.james.mailbox.store.quota.StoreCurrentQuotaManager;


Expand All @@ -37,7 +38,7 @@ static MessageIdManagerTestSystem createTestingData(CassandraCluster cassandra,
Set<PreDeletionHook> preDeletionHooks) { Set<PreDeletionHook> preDeletionHooks) {
CassandraMailboxSessionMapperFactory mapperFactory = CassandraTestSystemFixture.createMapperFactory(cassandra); CassandraMailboxSessionMapperFactory mapperFactory = CassandraTestSystemFixture.createMapperFactory(cassandra);


return new MessageIdManagerTestSystem(CassandraTestSystemFixture.createMessageIdManager(mapperFactory, quotaManager, eventBus, preDeletionHooks), return new MessageIdManagerTestSystem(CassandraTestSystemFixture.createMessageIdManager(mapperFactory, quotaManager, eventBus, new PreDeletionHooks(preDeletionHooks)),
new CassandraMessageId.Factory(), new CassandraMessageId.Factory(),
mapperFactory, mapperFactory,
CassandraTestSystemFixture.createMailboxManager(mapperFactory)) { CassandraTestSystemFixture.createMailboxManager(mapperFactory)) {
Expand All @@ -53,7 +54,7 @@ static MessageIdManagerTestSystem createTestingDataWithQuota(CassandraCluster ca
mailboxManager.getQuotaComponents().getQuotaRootResolver(), mailboxManager.getEventBus(), quotaManager); mailboxManager.getQuotaComponents().getQuotaRootResolver(), mailboxManager.getEventBus(), quotaManager);
mailboxManager.getEventBus().register(listeningCurrentQuotaUpdater); mailboxManager.getEventBus().register(listeningCurrentQuotaUpdater);
return new MessageIdManagerTestSystem(CassandraTestSystemFixture.createMessageIdManager(mapperFactory, quotaManager, mailboxManager.getEventBus(), return new MessageIdManagerTestSystem(CassandraTestSystemFixture.createMessageIdManager(mapperFactory, quotaManager, mailboxManager.getEventBus(),
PreDeletionHook.NO_PRE_DELETION_HOOK), PreDeletionHooks.NO_PRE_DELETION_HOOK),
new CassandraMessageId.Factory(), new CassandraMessageId.Factory(),
mapperFactory, mapperFactory,
mailboxManager); mailboxManager);
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
import org.apache.james.mailbox.store.Authorizator; import org.apache.james.mailbox.store.Authorizator;
import org.apache.james.mailbox.store.MailboxManagerConfiguration; import org.apache.james.mailbox.store.MailboxManagerConfiguration;
import org.apache.james.mailbox.store.NoMailboxPathLocker; import org.apache.james.mailbox.store.NoMailboxPathLocker;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.SessionProvider; import org.apache.james.mailbox.store.SessionProvider;
import org.apache.james.mailbox.store.StoreMailboxAnnotationManager; import org.apache.james.mailbox.store.StoreMailboxAnnotationManager;
import org.apache.james.mailbox.store.StoreMessageIdManager; import org.apache.james.mailbox.store.StoreMessageIdManager;
Expand Down Expand Up @@ -78,15 +79,15 @@ static CassandraMailboxManager createMailboxManager(CassandraMailboxSessionMappe
MessageSearchIndex index = new SimpleMessageSearchIndex(mapperFactory, mapperFactory, new DefaultTextExtractor()); MessageSearchIndex index = new SimpleMessageSearchIndex(mapperFactory, mapperFactory, new DefaultTextExtractor());
CassandraMailboxManager cassandraMailboxManager = new CassandraMailboxManager(mapperFactory, sessionProvider, CassandraMailboxManager cassandraMailboxManager = new CassandraMailboxManager(mapperFactory, sessionProvider,
new NoMailboxPathLocker(), new MessageParser(), new CassandraMessageId.Factory(), new NoMailboxPathLocker(), new MessageParser(), new CassandraMessageId.Factory(),
eventBus, annotationManager, storeRightManager, quotaComponents, index, MailboxManagerConfiguration.DEFAULT, PreDeletionHook.NO_PRE_DELETION_HOOK); eventBus, annotationManager, storeRightManager, quotaComponents, index, MailboxManagerConfiguration.DEFAULT, PreDeletionHooks.NO_PRE_DELETION_HOOK);


eventBus.register(new MailboxAnnotationListener(mapperFactory, sessionProvider)); eventBus.register(new MailboxAnnotationListener(mapperFactory, sessionProvider));


return cassandraMailboxManager; return cassandraMailboxManager;
} }


static StoreMessageIdManager createMessageIdManager(CassandraMailboxSessionMapperFactory mapperFactory, QuotaManager quotaManager, EventBus eventBus, static StoreMessageIdManager createMessageIdManager(CassandraMailboxSessionMapperFactory mapperFactory, QuotaManager quotaManager, EventBus eventBus,
Set<PreDeletionHook> preDeletionHooks) { PreDeletionHooks preDeletionHooks) {
CassandraMailboxManager mailboxManager = createMailboxManager(mapperFactory); CassandraMailboxManager mailboxManager = createMailboxManager(mapperFactory);
return new StoreMessageIdManager( return new StoreMessageIdManager(
mailboxManager, mailboxManager,
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@
import org.apache.james.mailbox.cassandra.ids.CassandraMessageId; import org.apache.james.mailbox.cassandra.ids.CassandraMessageId;
import org.apache.james.mailbox.events.InVMEventBus; import org.apache.james.mailbox.events.InVMEventBus;
import org.apache.james.mailbox.events.delivery.InVmEventDelivery; import org.apache.james.mailbox.events.delivery.InVmEventDelivery;
import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.store.AbstractMailboxManagerAttachmentTest; import org.apache.james.mailbox.store.AbstractMailboxManagerAttachmentTest;
import org.apache.james.mailbox.store.Authenticator; import org.apache.james.mailbox.store.Authenticator;
import org.apache.james.mailbox.store.Authorizator; import org.apache.james.mailbox.store.Authorizator;
import org.apache.james.mailbox.store.MailboxManagerConfiguration; import org.apache.james.mailbox.store.MailboxManagerConfiguration;
import org.apache.james.mailbox.store.MailboxSessionMapperFactory; import org.apache.james.mailbox.store.MailboxSessionMapperFactory;
import org.apache.james.mailbox.store.NoMailboxPathLocker; import org.apache.james.mailbox.store.NoMailboxPathLocker;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.SessionProvider; import org.apache.james.mailbox.store.SessionProvider;
import org.apache.james.mailbox.store.StoreMailboxAnnotationManager; import org.apache.james.mailbox.store.StoreMailboxAnnotationManager;
import org.apache.james.mailbox.store.StoreRightManager; import org.apache.james.mailbox.store.StoreRightManager;
Expand Down Expand Up @@ -105,13 +105,13 @@ private void initSystemUnderTest() throws Exception {


mailboxManager = new CassandraMailboxManager(mailboxSessionMapperFactory, sessionProvider, new NoMailboxPathLocker(), new MessageParser(), mailboxManager = new CassandraMailboxManager(mailboxSessionMapperFactory, sessionProvider, new NoMailboxPathLocker(), new MessageParser(),
messageIdFactory, eventBus, annotationManager, storeRightManager, quotaComponents, messageIdFactory, eventBus, annotationManager, storeRightManager, quotaComponents,
index, MailboxManagerConfiguration.DEFAULT, PreDeletionHook.NO_PRE_DELETION_HOOK); index, MailboxManagerConfiguration.DEFAULT, PreDeletionHooks.NO_PRE_DELETION_HOOK);
MessageParser failingMessageParser = mock(MessageParser.class); MessageParser failingMessageParser = mock(MessageParser.class);
when(failingMessageParser.retrieveAttachments(any())) when(failingMessageParser.retrieveAttachments(any()))
.thenThrow(new RuntimeException("Message parser set to fail")); .thenThrow(new RuntimeException("Message parser set to fail"));
parseFailingMailboxManager = new CassandraMailboxManager(mailboxSessionMapperFactory, sessionProvider, parseFailingMailboxManager = new CassandraMailboxManager(mailboxSessionMapperFactory, sessionProvider,
new NoMailboxPathLocker(), failingMessageParser, messageIdFactory, new NoMailboxPathLocker(), failingMessageParser, messageIdFactory,
eventBus, annotationManager, storeRightManager, quotaComponents, index, MailboxManagerConfiguration.DEFAULT, PreDeletionHook.NO_PRE_DELETION_HOOK); eventBus, annotationManager, storeRightManager, quotaComponents, index, MailboxManagerConfiguration.DEFAULT, PreDeletionHooks.NO_PRE_DELETION_HOOK);
} }


@Override @Override
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@
import org.apache.james.mailbox.elasticsearch.search.ElasticSearchSearcher; import org.apache.james.mailbox.elasticsearch.search.ElasticSearchSearcher;
import org.apache.james.mailbox.events.InVMEventBus; import org.apache.james.mailbox.events.InVMEventBus;
import org.apache.james.mailbox.events.delivery.InVmEventDelivery; import org.apache.james.mailbox.events.delivery.InVmEventDelivery;
import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.inmemory.InMemoryId; import org.apache.james.mailbox.inmemory.InMemoryId;
import org.apache.james.mailbox.inmemory.InMemoryMailboxManager; import org.apache.james.mailbox.inmemory.InMemoryMailboxManager;
import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory; import org.apache.james.mailbox.inmemory.InMemoryMailboxSessionMapperFactory;
Expand All @@ -54,6 +53,7 @@
import org.apache.james.mailbox.store.FakeAuthenticator; import org.apache.james.mailbox.store.FakeAuthenticator;
import org.apache.james.mailbox.store.FakeAuthorizator; import org.apache.james.mailbox.store.FakeAuthorizator;
import org.apache.james.mailbox.store.JVMMailboxPathLocker; import org.apache.james.mailbox.store.JVMMailboxPathLocker;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.SessionProvider; import org.apache.james.mailbox.store.SessionProvider;
import org.apache.james.mailbox.store.StoreMailboxAnnotationManager; import org.apache.james.mailbox.store.StoreMailboxAnnotationManager;
import org.apache.james.mailbox.store.StoreMessageIdManager; import org.apache.james.mailbox.store.StoreMessageIdManager;
Expand Down Expand Up @@ -153,7 +153,7 @@ protected void initializeMailboxManager() {
storeRightManager, storeRightManager,
quotaComponents, quotaComponents,
elasticSearchListeningMessageSearchIndex, elasticSearchListeningMessageSearchIndex,
PreDeletionHook.NO_PRE_DELETION_HOOK); PreDeletionHooks.NO_PRE_DELETION_HOOK);


messageIdManager = new StoreMessageIdManager( messageIdManager = new StoreMessageIdManager(
storeMailboxManager, storeMailboxManager,
Expand All @@ -162,7 +162,7 @@ protected void initializeMailboxManager() {
storeMailboxManager.getMessageIdFactory(), storeMailboxManager.getMessageIdFactory(),
quotaComponents.getQuotaManager(), quotaComponents.getQuotaManager(),
quotaComponents.getQuotaRootResolver(), quotaComponents.getQuotaRootResolver(),
PreDeletionHook.NO_PRE_DELETION_HOOK); PreDeletionHooks.NO_PRE_DELETION_HOOK);


eventBus.register(elasticSearchListeningMessageSearchIndex); eventBus.register(elasticSearchListeningMessageSearchIndex);
this.messageSearchIndex = elasticSearchListeningMessageSearchIndex; this.messageSearchIndex = elasticSearchListeningMessageSearchIndex;
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@
import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.MailboxSession;
import org.apache.james.mailbox.events.EventBus; import org.apache.james.mailbox.events.EventBus;
import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.exception.MailboxException;
import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.jpa.mail.JPAMailboxMapper; import org.apache.james.mailbox.jpa.mail.JPAMailboxMapper;
import org.apache.james.mailbox.jpa.mail.model.JPAMailbox; import org.apache.james.mailbox.jpa.mail.model.JPAMailbox;
import org.apache.james.mailbox.model.MailboxPath; import org.apache.james.mailbox.model.MailboxPath;
import org.apache.james.mailbox.model.MessageId; import org.apache.james.mailbox.model.MessageId;
import org.apache.james.mailbox.store.MailboxManagerConfiguration; import org.apache.james.mailbox.store.MailboxManagerConfiguration;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.SessionProvider; import org.apache.james.mailbox.store.SessionProvider;
import org.apache.james.mailbox.store.StoreMailboxAnnotationManager; import org.apache.james.mailbox.store.StoreMailboxAnnotationManager;
import org.apache.james.mailbox.store.StoreMailboxManager; import org.apache.james.mailbox.store.StoreMailboxManager;
Expand Down Expand Up @@ -63,7 +63,7 @@ public JPAMailboxManager(JPAMailboxSessionMapperFactory mailboxSessionMapperFact
super(mailboxSessionMapperFactory, sessionProvider, locker, super(mailboxSessionMapperFactory, sessionProvider, locker,
messageParser, messageIdFactory, annotationManager, messageParser, messageIdFactory, annotationManager,
eventBus, storeRightManager, quotaComponents, eventBus, storeRightManager, quotaComponents,
index, MailboxManagerConfiguration.DEFAULT, PreDeletionHook.NO_PRE_DELETION_HOOK); index, MailboxManagerConfiguration.DEFAULT, PreDeletionHooks.NO_PRE_DELETION_HOOK);
} }


@Override @Override
Expand Down
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
import org.apache.james.mailbox.MailboxSession; import org.apache.james.mailbox.MailboxSession;
import org.apache.james.mailbox.events.EventBus; import org.apache.james.mailbox.events.EventBus;
import org.apache.james.mailbox.exception.MailboxException; import org.apache.james.mailbox.exception.MailboxException;
import org.apache.james.mailbox.extension.PreDeletionHook;
import org.apache.james.mailbox.jpa.mail.model.JPAMailbox; import org.apache.james.mailbox.jpa.mail.model.JPAMailbox;
import org.apache.james.mailbox.jpa.mail.model.openjpa.JPAMailboxMessage; import org.apache.james.mailbox.jpa.mail.model.openjpa.JPAMailboxMessage;
import org.apache.james.mailbox.model.MessageAttachment; import org.apache.james.mailbox.model.MessageAttachment;
Expand All @@ -37,6 +36,7 @@
import org.apache.james.mailbox.quota.QuotaRootResolver; import org.apache.james.mailbox.quota.QuotaRootResolver;
import org.apache.james.mailbox.store.BatchSizes; import org.apache.james.mailbox.store.BatchSizes;
import org.apache.james.mailbox.store.MailboxSessionMapperFactory; import org.apache.james.mailbox.store.MailboxSessionMapperFactory;
import org.apache.james.mailbox.store.PreDeletionHooks;
import org.apache.james.mailbox.store.StoreMessageManager; import org.apache.james.mailbox.store.StoreMessageManager;
import org.apache.james.mailbox.store.StoreRightManager; import org.apache.james.mailbox.store.StoreRightManager;
import org.apache.james.mailbox.store.mail.model.Mailbox; import org.apache.james.mailbox.store.mail.model.Mailbox;
Expand All @@ -63,7 +63,7 @@ public JPAMessageManager(MailboxSessionMapperFactory mapperFactory,
StoreRightManager storeRightManager) { StoreRightManager storeRightManager) {


super(JPAMailboxManager.DEFAULT_NO_MESSAGE_CAPABILITIES, mapperFactory, index, eventBus, locker, mailbox, super(JPAMailboxManager.DEFAULT_NO_MESSAGE_CAPABILITIES, mapperFactory, index, eventBus, locker, mailbox,
quotaManager, quotaRootResolver, messageParser, messageIdFactory, batchSizes, storeRightManager, PreDeletionHook.NO_PRE_DELETION_HOOK); quotaManager, quotaRootResolver, messageParser, messageIdFactory, batchSizes, storeRightManager, PreDeletionHooks.NO_PRE_DELETION_HOOK);
} }


@Override @Override
Expand Down
Loading

0 comments on commit 9506168

Please sign in to comment.