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 <khuatdang...@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-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to