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 bt...@apache.org on 2020/04/29 01:14:40 UTC
[james-project] 06/27: JAMES-3143 Guice binding for task
This is an automated email from the ASF dual-hosted git repository.
btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 4db5a1f875c815383dde3eec2ad3c3ae5d782838
Author: LanKhuat <kh...@gmail.com>
AuthorDate: Wed Apr 22 11:01:44 2020 +0700
JAMES-3143 Guice binding for task
---
.../webadmin/InconsistencySolvingRoutesModule.java | 16 ++++++++++++++++
.../apache/james/modules/TaskSerializationModule.java | 13 +++++++++++++
.../james/modules/server/MessagesRoutesModule.java | 2 ++
3 files changed, 31 insertions(+)
diff --git a/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/webadmin/InconsistencySolvingRoutesModule.java b/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/webadmin/InconsistencySolvingRoutesModule.java
index baf4402..f5197e1 100644
--- a/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/webadmin/InconsistencySolvingRoutesModule.java
+++ b/server/container/guice/cassandra-guice/src/main/java/org/apache/james/modules/webadmin/InconsistencySolvingRoutesModule.java
@@ -21,11 +21,14 @@ package org.apache.james.modules.webadmin;
import org.apache.james.mailbox.cassandra.mail.task.RecomputeMailboxCountersService;
import org.apache.james.mailbox.cassandra.mail.task.SolveMailboxInconsistenciesService;
+import org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService;
import org.apache.james.webadmin.Routes;
import org.apache.james.webadmin.routes.CassandraMappingsRoutes;
import org.apache.james.webadmin.routes.MailboxesRoutes;
+import org.apache.james.webadmin.routes.MessagesRoutes;
import org.apache.james.webadmin.routes.RecomputeMailboxCountersRequestToTask;
import org.apache.james.webadmin.routes.SolveMailboxInconsistenciesRequestToTask;
+import org.apache.james.webadmin.routes.SolveMessageInconsistenciesRequestToTask;
import org.apache.james.webadmin.service.CassandraMappingsService;
import org.apache.james.webadmin.tasks.TaskFromRequestRegistry;
@@ -60,9 +63,22 @@ public class InconsistencySolvingRoutesModule extends AbstractModule {
}
}
+ public static class SolveMessageInconsistenciesModules extends AbstractModule {
+ @Override
+ protected void configure() {
+ bind(SolveMessageInconsistenciesService.class).in(Scopes.SINGLETON);
+
+ Multibinder<TaskFromRequestRegistry.TaskRegistration> multiBinder = Multibinder.newSetBinder(binder(),
+ TaskFromRequestRegistry.TaskRegistration.class, Names.named(MessagesRoutes.ALL_MESSAGES_TASKS));
+
+ multiBinder.addBinding().to(SolveMessageInconsistenciesRequestToTask.class);
+ }
+ }
+
@Override
protected void configure() {
install(new SolveRRTInconsistenciesModules());
install(new SolveMailboxInconsistenciesModules());
+ install(new SolveMessageInconsistenciesModules());
}
}
diff --git a/server/container/guice/cassandra-rabbitmq-guice/src/main/java/org/apache/james/modules/TaskSerializationModule.java b/server/container/guice/cassandra-rabbitmq-guice/src/main/java/org/apache/james/modules/TaskSerializationModule.java
index 2b03f57..ab6b867 100644
--- a/server/container/guice/cassandra-rabbitmq-guice/src/main/java/org/apache/james/modules/TaskSerializationModule.java
+++ b/server/container/guice/cassandra-rabbitmq-guice/src/main/java/org/apache/james/modules/TaskSerializationModule.java
@@ -41,6 +41,9 @@ import org.apache.james.mailbox.cassandra.mail.task.RecomputeMailboxCountersTask
import org.apache.james.mailbox.cassandra.mail.task.SolveMailboxInconsistenciesService;
import org.apache.james.mailbox.cassandra.mail.task.SolveMailboxInconsistenciesTaskAdditionalInformationDTO;
import org.apache.james.mailbox.cassandra.mail.task.SolveMailboxInconsistenciesTaskDTO;
+import org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService;
+import org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesTaskAdditionalInformationDTO;
+import org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesTaskDTO;
import org.apache.james.mailbox.model.MailboxId;
import org.apache.james.mailbox.model.MessageId;
import org.apache.james.queue.api.MailQueueFactory;
@@ -296,6 +299,11 @@ public class TaskSerializationModule extends AbstractModule {
}
@ProvidesIntoSet
+ public TaskDTOModule<? extends Task, ? extends TaskDTO> solveMessageInconsistenciesTask(SolveMessageInconsistenciesService solveMessageInconsistenciesService) {
+ return SolveMessageInconsistenciesTaskDTO.module(solveMessageInconsistenciesService);
+ }
+
+ @ProvidesIntoSet
public TaskDTOModule<? extends Task, ? extends TaskDTO> singleMailboxReindexingTask(SingleMailboxReindexingTask.Factory factory) {
return SingleMailboxReindexingTaskDTO.module(factory);
}
@@ -440,6 +448,11 @@ public class TaskSerializationModule extends AbstractModule {
return MailboxesExportTaskAdditionalInformationDTO.SERIALIZATION_MODULE;
}
+ @ProvidesIntoSet
+ public AdditionalInformationDTOModule<? extends TaskExecutionDetails.AdditionalInformation, ? extends AdditionalInformationDTO> solveMessageInconsistenciesAdditionalInformation() {
+ return SolveMessageInconsistenciesTaskAdditionalInformationDTO.MODULE;
+ }
+
@Named(EventNestedTypes.EVENT_NESTED_TYPES_INJECTION_NAME)
@Provides
public Set<DTOModule<?, ? extends org.apache.james.json.DTO>> eventNestedTypes(Set<AdditionalInformationDTOModule<? extends TaskExecutionDetails.AdditionalInformation, ? extends AdditionalInformationDTO>> additionalInformationDTOModules,
diff --git a/server/container/guice/protocols/webadmin-mailbox/src/main/java/org/apache/james/modules/server/MessagesRoutesModule.java b/server/container/guice/protocols/webadmin-mailbox/src/main/java/org/apache/james/modules/server/MessagesRoutesModule.java
index 8af3a00..df23a93 100644
--- a/server/container/guice/protocols/webadmin-mailbox/src/main/java/org/apache/james/modules/server/MessagesRoutesModule.java
+++ b/server/container/guice/protocols/webadmin-mailbox/src/main/java/org/apache/james/modules/server/MessagesRoutesModule.java
@@ -30,5 +30,7 @@ public class MessagesRoutesModule extends AbstractModule {
protected void configure() {
Multibinder<Routes> routesMultibinder = Multibinder.newSetBinder(binder(), Routes.class);
routesMultibinder.addBinding().to(MessagesRoutes.class);
+
+
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org