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 a4cee744d62023d5f89d1f1524c70e048ab30731
Author: LanKhuat <[email protected]>
AuthorDate: Mon May 18 17:32:31 2020 +0700

    JAMES-3184 Update task serialization/deserialization with RunningOptions
---
 .../cassandra/mail/task/RunningOptionsDTO.java     | 34 +++++++++++------
 .../mail/task/SolveMessageInconsistenciesTask.java | 22 +++++++++--
 ...nconsistenciesTaskAdditionalInformationDTO.java | 13 +++++++
 .../task/SolveMessageInconsistenciesTaskDTO.java   | 19 ++++++++--
 ...essageInconsistenciesTaskSerializationTest.java | 43 +++++++++++++++++++++-
 ...ssageInconsistencies.additionalInformation.json |  3 ++
 ...onsistencies.additionalInformation.legacy.json} |  0
 .../json/solveMessageInconsistencies.task.json     |  5 ++-
 ...> solveMessageInconsistencies.task.legacy.json} |  0
 .../SolveMessageInconsistenciesRequestToTask.java  |  3 +-
 10 files changed, 120 insertions(+), 22 deletions(-)

diff --git 
a/server/protocols/webadmin/webadmin-cassandra/src/main/java/org/apache/james/webadmin/routes/SolveMessageInconsistenciesRequestToTask.java
 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/RunningOptionsDTO.java
similarity index 57%
copy from 
server/protocols/webadmin/webadmin-cassandra/src/main/java/org/apache/james/webadmin/routes/SolveMessageInconsistenciesRequestToTask.java
copy to 
mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/RunningOptionsDTO.java
index 8702b86..96c21fd 100644
--- 
a/server/protocols/webadmin/webadmin-cassandra/src/main/java/org/apache/james/webadmin/routes/SolveMessageInconsistenciesRequestToTask.java
+++ 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/RunningOptionsDTO.java
@@ -17,20 +17,32 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james.webadmin.routes;
+package org.apache.james.mailbox.cassandra.mail.task;
 
-import javax.inject.Inject;
+import java.util.Optional;
 
-import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService;
-import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesTask;
-import org.apache.james.webadmin.tasks.TaskFromRequestRegistry;
-import org.apache.james.webadmin.tasks.TaskRegistrationKey;
+import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService.RunningOptions;
 
-public class SolveMessageInconsistenciesRequestToTask extends 
TaskFromRequestRegistry.TaskRegistration {
-    private static final TaskRegistrationKey REGISTRATION_KEY = 
TaskRegistrationKey.of("SolveInconsistencies");
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonProperty;
 
-    @Inject
-    public 
SolveMessageInconsistenciesRequestToTask(SolveMessageInconsistenciesService 
service) {
-        super(REGISTRATION_KEY, request -> new 
SolveMessageInconsistenciesTask(service));
+public class RunningOptionsDTO {
+    public static RunningOptionsDTO 
asDTO(SolveMessageInconsistenciesService.RunningOptions domainObject) {
+        return new 
RunningOptionsDTO(Optional.of(domainObject.getMessagesPerSecond()));
+    }
+
+    private final Optional<Integer> messagesPerSecond;
+
+    @JsonCreator
+    public RunningOptionsDTO(@JsonProperty("messagesPerSecond") 
Optional<Integer> messagesPerSecond) {
+        this.messagesPerSecond = messagesPerSecond;
+    }
+
+    public Optional<Integer> getMessagesPerSecond() {
+        return messagesPerSecond;
+    }
+
+    public RunningOptions asDomainObject() {
+        return new 
RunningOptions(messagesPerSecond.orElse(RunningOptions.DEFAULT.getMessagesPerSecond()));
     }
 }
diff --git 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTask.java
 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTask.java
index 1fb540c..c56b8b3 100644
--- 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTask.java
+++ 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTask.java
@@ -25,6 +25,7 @@ import java.util.Optional;
 
 import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService.Context;
 import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService.Context.Snapshot;
+import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService.RunningOptions;
 import org.apache.james.mailbox.model.ComposedMessageId;
 import org.apache.james.task.Task;
 import org.apache.james.task.TaskExecutionDetails;
@@ -45,11 +46,12 @@ public class SolveMessageInconsistenciesTask implements 
Task {
         private final long addedMessageIdEntries;
         private final long updatedMessageIdEntries;
         private final long removedMessageIdEntries;
+        private final RunningOptions runningOptions;
         private final ImmutableList<MessageInconsistenciesEntry> 
fixedInconsistencies;
         private final ImmutableList<MessageInconsistenciesEntry> errors;
 
         public Details(Instant instant, long processedImapUidEntries, long 
processedMessageIdEntries,
-                       long addedMessageIdEntries, long 
updatedMessageIdEntries, long removedMessageIdEntries,
+                       long addedMessageIdEntries, long 
updatedMessageIdEntries, long removedMessageIdEntries, RunningOptions 
runningOptions,
                        ImmutableList<MessageInconsistenciesEntry> 
fixedInconsistencies, ImmutableList<MessageInconsistenciesEntry> errors) {
             this.instant = instant;
             this.processedImapUidEntries = processedImapUidEntries;
@@ -57,6 +59,7 @@ public class SolveMessageInconsistenciesTask implements Task {
             this.addedMessageIdEntries = addedMessageIdEntries;
             this.updatedMessageIdEntries = updatedMessageIdEntries;
             this.removedMessageIdEntries = removedMessageIdEntries;
+            this.runningOptions = runningOptions;
             this.fixedInconsistencies = fixedInconsistencies;
             this.errors = errors;
         }
@@ -91,6 +94,11 @@ public class SolveMessageInconsistenciesTask implements Task 
{
             return removedMessageIdEntries;
         }
 
+        @JsonProperty("runningOptions")
+        public RunningOptions getRunningOptions() {
+            return runningOptions;
+        }
+
         @JsonProperty("fixedInconsistencies")
         public ImmutableList<MessageInconsistenciesEntry> 
getFixedInconsistencies() {
             return fixedInconsistencies;
@@ -104,15 +112,17 @@ public class SolveMessageInconsistenciesTask implements 
Task {
 
     private final SolveMessageInconsistenciesService service;
     private Context context;
+    private RunningOptions runningOptions;
 
-    public SolveMessageInconsistenciesTask(SolveMessageInconsistenciesService 
service) {
+    public SolveMessageInconsistenciesTask(SolveMessageInconsistenciesService 
service, RunningOptions runningOptions) {
         this.service = service;
+        this.runningOptions = runningOptions;
         this.context = new Context();
     }
 
     @Override
     public Result run() {
-        return service.fixMessageInconsistencies(context)
+        return service.fixMessageInconsistencies(context, runningOptions)
             .block();
     }
 
@@ -121,11 +131,15 @@ public class SolveMessageInconsistenciesTask implements 
Task {
         return SOLVE_MESSAGE_INCONSISTENCIES;
     }
 
+    public RunningOptions getRunningOptions() {
+        return this.runningOptions;
+    }
+
     @Override
     public Optional<TaskExecutionDetails.AdditionalInformation> details() {
         Snapshot snapshot = context.snapshot();
         return Optional.of(new Details(Clock.systemUTC().instant(), 
snapshot.getProcessedImapUidEntries(), snapshot.getProcessedMessageIdEntries(),
-            snapshot.getAddedMessageIdEntries(), 
snapshot.getUpdatedMessageIdEntries(), snapshot.getRemovedMessageIdEntries(),
+            snapshot.getAddedMessageIdEntries(), 
snapshot.getUpdatedMessageIdEntries(), snapshot.getRemovedMessageIdEntries(), 
runningOptions,
             snapshot.getFixedInconsistencies().stream()
                 .map(this::toMessageInconsistenciesEntry)
                 .collect(Guavate.toImmutableList()),
diff --git 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskAdditionalInformationDTO.java
 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskAdditionalInformationDTO.java
index a7792db..c8ae05d 100644
--- 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskAdditionalInformationDTO.java
+++ 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskAdditionalInformationDTO.java
@@ -22,8 +22,10 @@ package org.apache.james.mailbox.cassandra.mail.task;
 import static 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesTask.SOLVE_MESSAGE_INCONSISTENCIES;
 
 import java.time.Instant;
+import java.util.Optional;
 
 import org.apache.james.json.DTOModule;
+import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService.RunningOptions;
 import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesTask.Details;
 import org.apache.james.server.task.json.dto.AdditionalInformationDTO;
 import org.apache.james.server.task.json.dto.AdditionalInformationDTOModule;
@@ -42,6 +44,7 @@ public class 
SolveMessageInconsistenciesTaskAdditionalInformationDTO implements
             details.getAddedMessageIdEntries(),
             details.getUpdatedMessageIdEntries(),
             details.getRemovedMessageIdEntries(),
+            Optional.of(RunningOptionsDTO.asDTO(details.getRunningOptions())),
             details.getFixedInconsistencies(),
             details.getErrors());
     }
@@ -62,6 +65,7 @@ public class 
SolveMessageInconsistenciesTaskAdditionalInformationDTO implements
     private final long addedMessageIdEntries;
     private final long updatedMessageIdEntries;
     private final long removedMessageIdEntries;
+    private final Optional<RunningOptionsDTO> runningOptions;
     private final ImmutableList<MessageInconsistenciesEntry> 
fixedInconsistencies;
     private final ImmutableList<MessageInconsistenciesEntry> errors;
 
@@ -71,6 +75,7 @@ public class 
SolveMessageInconsistenciesTaskAdditionalInformationDTO implements
                                                                    
@JsonProperty("addedMessageIdEntries") long addedMessageIdEntries,
                                                                    
@JsonProperty("updatedMessageIdEntries") long updatedMessageIdEntries,
                                                                    
@JsonProperty("removedMessageIdEntries")long removedMessageIdEntries,
+                                                                   
@JsonProperty("runningOptions") Optional<RunningOptionsDTO> runningOptions,
                                                                    
@JsonProperty("fixedInconsistencies") 
ImmutableList<MessageInconsistenciesEntry> fixedInconsistencies,
                                                                    
@JsonProperty("errors") ImmutableList<MessageInconsistenciesEntry> errors) {
         this.timestamp = timestamp;
@@ -80,6 +85,7 @@ public class 
SolveMessageInconsistenciesTaskAdditionalInformationDTO implements
         this.addedMessageIdEntries = addedMessageIdEntries;
         this.updatedMessageIdEntries = updatedMessageIdEntries;
         this.removedMessageIdEntries = removedMessageIdEntries;
+        this.runningOptions = runningOptions;
         this.fixedInconsistencies = fixedInconsistencies;
         this.errors = errors;
     }
@@ -104,6 +110,10 @@ public class 
SolveMessageInconsistenciesTaskAdditionalInformationDTO implements
         return removedMessageIdEntries;
     }
 
+    public Optional<RunningOptionsDTO> getRunningOptions() {
+        return runningOptions;
+    }
+
     public ImmutableList<MessageInconsistenciesEntry> 
getFixedInconsistencies() {
         return fixedInconsistencies;
     }
@@ -129,6 +139,9 @@ public class 
SolveMessageInconsistenciesTaskAdditionalInformationDTO implements
             addedMessageIdEntries,
             updatedMessageIdEntries,
             removedMessageIdEntries,
+            runningOptions
+                .map(RunningOptionsDTO::asDomainObject)
+                .orElse(RunningOptions.DEFAULT),
             fixedInconsistencies,
             errors);
     }
diff --git 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskDTO.java
 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskDTO.java
index 7caeea6..d1356bd 100644
--- 
a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskDTO.java
+++ 
b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskDTO.java
@@ -21,7 +21,10 @@ package org.apache.james.mailbox.cassandra.mail.task;
 
 import static 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesTask.SOLVE_MESSAGE_INCONSISTENCIES;
 
+import java.util.Optional;
+
 import org.apache.james.json.DTOModule;
+import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService.RunningOptions;
 import org.apache.james.server.task.json.dto.TaskDTO;
 import org.apache.james.server.task.json.dto.TaskDTOModule;
 
@@ -30,7 +33,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 public class SolveMessageInconsistenciesTaskDTO implements TaskDTO {
 
     private static SolveMessageInconsistenciesTaskDTO 
toDTO(SolveMessageInconsistenciesTask domainObject, String typeName) {
-        return new SolveMessageInconsistenciesTaskDTO(typeName);
+        return new SolveMessageInconsistenciesTaskDTO(typeName, 
Optional.of(RunningOptionsDTO.asDTO(domainObject.getRunningOptions())));
     }
 
     public static TaskDTOModule<SolveMessageInconsistenciesTask, 
SolveMessageInconsistenciesTaskDTO> module(SolveMessageInconsistenciesService 
service) {
@@ -44,17 +47,27 @@ public class SolveMessageInconsistenciesTaskDTO implements 
TaskDTO {
     }
 
     private final String type;
+    private final Optional<RunningOptionsDTO> runningOptions;
 
-    public SolveMessageInconsistenciesTaskDTO(@JsonProperty("type") String 
type) {
+    public SolveMessageInconsistenciesTaskDTO(@JsonProperty("type") String 
type,
+                                              @JsonProperty("runningOptions") 
Optional<RunningOptionsDTO> runningOptions) {
         this.type = type;
+        this.runningOptions = runningOptions;
     }
 
     private SolveMessageInconsistenciesTask 
toDomainObject(SolveMessageInconsistenciesService service) {
-        return new SolveMessageInconsistenciesTask(service);
+        return new SolveMessageInconsistenciesTask(service,
+            runningOptions
+                .map(RunningOptionsDTO::asDomainObject)
+                .orElse(RunningOptions.DEFAULT));
     }
 
     @Override
     public String getType() {
         return type;
     }
+
+    public Optional<RunningOptionsDTO> getRunningOptions() {
+        return runningOptions;
+    }
 }
diff --git 
a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskSerializationTest.java
 
b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskSerializationTest.java
index f6ec69d..3edb7ee 100644
--- 
a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskSerializationTest.java
+++ 
b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/task/SolveMessageInconsistenciesTaskSerializationTest.java
@@ -19,11 +19,14 @@
 
 package org.apache.james.mailbox.cassandra.mail.task;
 
+import static org.assertj.core.api.Assertions.assertThat;
 import static org.mockito.Mockito.mock;
 
 import java.time.Instant;
 
 import org.apache.james.JsonSerializationVerifier;
+import org.apache.james.json.JsonGenericSerializer;
+import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService.RunningOptions;
 import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesTask.Details;
 import org.apache.james.util.ClassLoaderUtils;
 import org.junit.jupiter.api.Test;
@@ -33,7 +36,8 @@ import com.google.common.collect.ImmutableList;
 public class SolveMessageInconsistenciesTaskSerializationTest {
 
     private static final SolveMessageInconsistenciesService SERVICE = 
mock(SolveMessageInconsistenciesService.class);
-    private static final SolveMessageInconsistenciesTask TASK = new 
SolveMessageInconsistenciesTask(SERVICE);
+    private static final SolveMessageInconsistenciesTask TASK = new 
SolveMessageInconsistenciesTask(SERVICE, new RunningOptions(2));
+    private static final SolveMessageInconsistenciesTask LEGACY_TASK = new 
SolveMessageInconsistenciesTask(SERVICE, RunningOptions.DEFAULT);
 
     private static final Instant INSTANT = 
Instant.parse("2007-12-03T10:15:30.00Z");
     private static final String MAILBOX_ID = 
"551f0580-82fb-11ea-970e-f9c83d4cf8c2";
@@ -57,7 +61,7 @@ public class SolveMessageInconsistenciesTaskSerializationTest 
{
         .messageId(MESSAGE_ID_3)
         .messageUid(MESSAGE_UID_3);
 
-    private static final Details DETAILS = new 
SolveMessageInconsistenciesTask.Details(INSTANT, 2, 1, 1, 0, 1, 
ImmutableList.of(MESSAGE_1, MESSAGE_2), ImmutableList.of(MESSAGE_3));
+    private static final Details DETAILS = new 
SolveMessageInconsistenciesTask.Details(INSTANT, 2, 1, 1, 0, 1, new 
SolveMessageInconsistenciesService.RunningOptions(2), 
ImmutableList.of(MESSAGE_1, MESSAGE_2), ImmutableList.of(MESSAGE_3));
 
     @Test
     void taskShouldBeSerializable() throws Exception {
@@ -68,6 +72,20 @@ public class 
SolveMessageInconsistenciesTaskSerializationTest {
     }
 
     @Test
+    void legacyTaskShouldBeDeserializable() throws Exception {
+        SolveMessageInconsistenciesService service = 
mock(SolveMessageInconsistenciesService.class);
+
+        SolveMessageInconsistenciesTask legacyTask = 
JsonGenericSerializer.forModules(SolveMessageInconsistenciesTaskDTO.module(service))
+            .withoutNestedType()
+            
.deserialize(ClassLoaderUtils.getSystemResourceAsString("json/solveMessageInconsistencies.task.legacy.json"));
+
+        SolveMessageInconsistenciesTask expected = new 
SolveMessageInconsistenciesTask(service, RunningOptions.DEFAULT);
+
+        assertThat(legacyTask)
+            .isEqualToComparingFieldByFieldRecursively(expected);
+    }
+
+    @Test
     void additionalInformationShouldBeSerializable() throws Exception {
         
JsonSerializationVerifier.dtoModule(SolveMessageInconsistenciesTaskAdditionalInformationDTO.MODULE)
             .bean(DETAILS)
@@ -75,4 +93,25 @@ public class 
SolveMessageInconsistenciesTaskSerializationTest {
             .verify();
     }
 
+    @Test
+    void legacyAdditionalInformationShouldBeDeserializable() throws Exception {
+        SolveMessageInconsistenciesTask.Details legacyDetails = 
JsonGenericSerializer.forModules(SolveMessageInconsistenciesTaskAdditionalInformationDTO.MODULE)
+            .withoutNestedType()
+            
.deserialize(ClassLoaderUtils.getSystemResourceAsString("json/solveMessageInconsistencies.additionalInformation.legacy.json"));
+
+        SolveMessageInconsistenciesTask.Details expected = new 
SolveMessageInconsistenciesTask.Details(
+            INSTANT,
+            2,
+            1,
+            1,
+            0,
+            1,
+            RunningOptions.DEFAULT,
+            ImmutableList.of(MESSAGE_1, MESSAGE_2),
+            ImmutableList.of(MESSAGE_3)
+            );
+
+        assertThat(legacyDetails)
+            .isEqualToComparingFieldByFieldRecursively(expected);
+    }
 }
diff --git 
a/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.additionalInformation.json
 
b/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.additionalInformation.json
index 5ab72a0..d651687 100644
--- 
a/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.additionalInformation.json
+++ 
b/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.additionalInformation.json
@@ -6,6 +6,9 @@
   "addedMessageIdEntries": 1,
   "updatedMessageIdEntries": 0,
   "removedMessageIdEntries": 1,
+  "runningOptions":{
+      "messagesPerSecond": 2
+  },
   "fixedInconsistencies": [
     {
       "mailboxId": "551f0580-82fb-11ea-970e-f9c83d4cf8c2",
diff --git 
a/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.additionalInformation.json
 
b/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.additionalInformation.legacy.json
similarity index 100%
copy from 
mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.additionalInformation.json
copy to 
mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.additionalInformation.legacy.json
diff --git 
a/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.json
 
b/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.json
index f1c66ee..92b1edd 100644
--- 
a/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.json
+++ 
b/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.json
@@ -1,3 +1,6 @@
 {
-  "type":"solve-message-inconsistencies"
+  "type":"solve-message-inconsistencies",
+  "runningOptions":{
+    "messagesPerSecond":2
+  }
 }
\ No newline at end of file
diff --git 
a/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.json
 
b/mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.legacy.json
similarity index 100%
copy from 
mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.json
copy to 
mailbox/cassandra/src/test/resources/json/solveMessageInconsistencies.task.legacy.json
diff --git 
a/server/protocols/webadmin/webadmin-cassandra/src/main/java/org/apache/james/webadmin/routes/SolveMessageInconsistenciesRequestToTask.java
 
b/server/protocols/webadmin/webadmin-cassandra/src/main/java/org/apache/james/webadmin/routes/SolveMessageInconsistenciesRequestToTask.java
index 8702b86..72e777a 100644
--- 
a/server/protocols/webadmin/webadmin-cassandra/src/main/java/org/apache/james/webadmin/routes/SolveMessageInconsistenciesRequestToTask.java
+++ 
b/server/protocols/webadmin/webadmin-cassandra/src/main/java/org/apache/james/webadmin/routes/SolveMessageInconsistenciesRequestToTask.java
@@ -22,6 +22,7 @@ package org.apache.james.webadmin.routes;
 import javax.inject.Inject;
 
 import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService;
+import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesService.RunningOptions;
 import 
org.apache.james.mailbox.cassandra.mail.task.SolveMessageInconsistenciesTask;
 import org.apache.james.webadmin.tasks.TaskFromRequestRegistry;
 import org.apache.james.webadmin.tasks.TaskRegistrationKey;
@@ -31,6 +32,6 @@ public class SolveMessageInconsistenciesRequestToTask extends 
TaskFromRequestReg
 
     @Inject
     public 
SolveMessageInconsistenciesRequestToTask(SolveMessageInconsistenciesService 
service) {
-        super(REGISTRATION_KEY, request -> new 
SolveMessageInconsistenciesTask(service));
+        super(REGISTRATION_KEY, request -> new 
SolveMessageInconsistenciesTask(service, RunningOptions.DEFAULT));
     }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to