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 7a47d8ba636b46b3f495de47d8db05b30f867854 Author: Gautier DI FOLCO <gdifo...@linagora.com> AuthorDate: Wed Sep 4 13:06:52 2019 +0200 JAMES-2813 Extract MailboxPathV2MigrationTask --- .../mail/migration/MailboxPathV2Migration.java | 44 ++++++++++++++-------- 1 file changed, 28 insertions(+), 16 deletions(-) diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/MailboxPathV2Migration.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/MailboxPathV2Migration.java index d3cb735..6b4a7b6 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/MailboxPathV2Migration.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/MailboxPathV2Migration.java @@ -38,6 +38,29 @@ import reactor.core.publisher.Mono; public class MailboxPathV2Migration implements Migration { + static class MailboxPathV2MigrationTask implements Task { + private final MailboxPathV2Migration migration; + + MailboxPathV2MigrationTask(MailboxPathV2Migration migration) { + this.migration = migration; + } + + @Override + public Result run() throws InterruptedException { + return migration.runTask(); + } + + @Override + public TaskType type() { + return TYPE; + } + + @Override + public Optional<TaskExecutionDetails.AdditionalInformation> details() { + return Optional.of(migration.getAdditionalInformation()); + } + } + public static class AdditionalInformation implements TaskExecutionDetails.AdditionalInformation { private final Supplier<Long> countSupplier; private final long initialCount; @@ -57,6 +80,7 @@ public class MailboxPathV2Migration implements Migration { } public static final Logger LOGGER = LoggerFactory.getLogger(MailboxPathV2Migration.class); + public static final TaskType TYPE = TaskType.of("Cassandra_mailboxPathV2Migration"); private final CassandraMailboxPathDAOImpl daoV1; private final CassandraMailboxPathV2DAO daoV2; private final AdditionalInformation additionalInformation; @@ -90,22 +114,10 @@ public class MailboxPathV2Migration implements Migration { @Override public Task asTask() { - return new Task() { - @Override - public Result run() throws InterruptedException { - return runTask(); - } - - @Override - public TaskType type() { - return TaskType.of("Cassandra_mailboxPathV2Migration"); - } - - @Override - public Optional<TaskExecutionDetails.AdditionalInformation> details() { - return Optional.of(additionalInformation); - } - }; + return new MailboxPathV2MigrationTask(this); } + AdditionalInformation getAdditionalInformation() { + return additionalInformation; + } } --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org