Repository: james-project Updated Branches: refs/heads/master 4490d62a2 -> 6d72e4d20
JAMES-2630 remove last calls to Mono::fromFuture Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/6d72e4d2 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/6d72e4d2 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/6d72e4d2 Branch: refs/heads/master Commit: 6d72e4d20e38fa38c2e2434a199966679470847b Parents: f5ea01e Author: Matthieu Baechler <matth...@apache.org> Authored: Mon Jan 28 18:18:19 2019 +0100 Committer: Matthieu Baechler <matth...@apache.org> Committed: Wed Feb 6 15:26:22 2019 +0100 ---------------------------------------------------------------------- .../james/backends/cassandra/init/CassandraTableManager.java | 8 ++++---- .../james/mailbox/cassandra/mail/CassandraAttachmentDAO.java | 4 ++-- .../cassandra/mail/migration/AttachmentV2Migration.java | 4 +--- .../mailbox/cassandra/mail/CassandraAttachmentDAOTest.java | 2 +- .../cassandra/mail/migration/AttachmentV2MigrationTest.java | 2 +- .../mailrepository/cassandra/CassandraMailRepository.java | 7 +++---- 6 files changed, 12 insertions(+), 15 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/6d72e4d2/backends-common/cassandra/src/main/java/org/apache/james/backends/cassandra/init/CassandraTableManager.java ---------------------------------------------------------------------- diff --git a/backends-common/cassandra/src/main/java/org/apache/james/backends/cassandra/init/CassandraTableManager.java b/backends-common/cassandra/src/main/java/org/apache/james/backends/cassandra/init/CassandraTableManager.java index 3317138..6ad0fdc 100644 --- a/backends-common/cassandra/src/main/java/org/apache/james/backends/cassandra/init/CassandraTableManager.java +++ b/backends-common/cassandra/src/main/java/org/apache/james/backends/cassandra/init/CassandraTableManager.java @@ -66,13 +66,13 @@ public class CassandraTableManager { .block(); } - private Mono<?> truncate(CassandraAsyncExecutor executor, String name) { - return Mono.fromFuture(executor.execute( + private Mono<Void> truncate(CassandraAsyncExecutor executor, String name) { + return executor.executeReactor( QueryBuilder.select() .from(name) .limit(1) - .setFetchSize(1))) + .setFetchSize(1)) .filter(resultSet -> !resultSet.isExhausted()) - .flatMap(ignored -> Mono.fromFuture(executor.execute(QueryBuilder.truncate(name)))); + .flatMap(ignored -> executor.executeVoidReactor(QueryBuilder.truncate(name))); } } http://git-wip-us.apache.org/repos/asf/james-project/blob/6d72e4d2/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAO.java ---------------------------------------------------------------------- diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAO.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAO.java index fb00ec0..de98abb 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAO.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAO.java @@ -126,8 +126,8 @@ public class CassandraAttachmentDAO { .setBytes(PAYLOAD, ByteBuffer.wrap(attachment.getBytes()))); } - public CompletableFuture<Void> deleteAttachment(AttachmentId attachmentId) { - return cassandraAsyncExecutor.executeVoid( + public Mono<Void> deleteAttachment(AttachmentId attachmentId) { + return cassandraAsyncExecutor.executeVoidReactor( deleteStatement .bind() .setString(ID, attachmentId.getId())); http://git-wip-us.apache.org/repos/asf/james-project/blob/6d72e4d2/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2Migration.java ---------------------------------------------------------------------- diff --git a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2Migration.java b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2Migration.java index 273e92c..ed836ff 100644 --- a/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2Migration.java +++ b/mailbox/cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2Migration.java @@ -30,8 +30,6 @@ import org.apache.james.task.Task; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import reactor.core.publisher.Mono; - public class AttachmentV2Migration implements Migration { private static final Logger LOGGER = LoggerFactory.getLogger(AttachmentV2Migration.class); private final CassandraAttachmentDAO attachmentDAOV1; @@ -64,7 +62,7 @@ public class AttachmentV2Migration implements Migration { return blobStore.save(attachment.getBytes()) .map(blobId -> CassandraAttachmentDAOV2.from(attachment, blobId)) .flatMap(attachmentDAOV2::storeAttachment) - .then(Mono.defer(() -> Mono.fromFuture(attachmentDAOV1.deleteAttachment(attachment.getAttachmentId())))) + .then(attachmentDAOV1.deleteAttachment(attachment.getAttachmentId())) .thenReturn(Result.COMPLETED) .block(); } catch (Exception e) { http://git-wip-us.apache.org/repos/asf/james-project/blob/6d72e4d2/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAOTest.java ---------------------------------------------------------------------- diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAOTest.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAOTest.java index 6cd0b2f..2aa9601 100644 --- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAOTest.java +++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/CassandraAttachmentDAOTest.java @@ -112,7 +112,7 @@ class CassandraAttachmentDAOTest { .build(); testee.storeAttachment(attachment).join(); - testee.deleteAttachment(attachment.getAttachmentId()).join(); + testee.deleteAttachment(attachment.getAttachmentId()).block(); assertThat(testee.getAttachment(attachment.getAttachmentId()).blockOptional()) .isEmpty(); http://git-wip-us.apache.org/repos/asf/james-project/blob/6d72e4d2/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2MigrationTest.java ---------------------------------------------------------------------- diff --git a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2MigrationTest.java b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2MigrationTest.java index 9ca7bff..1c8ec6c 100644 --- a/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2MigrationTest.java +++ b/mailbox/cassandra/src/test/java/org/apache/james/mailbox/cassandra/mail/migration/AttachmentV2MigrationTest.java @@ -213,7 +213,7 @@ class AttachmentV2MigrationTest { when(blobsDAO.save(attachment2.getBytes())) .thenThrow(new RuntimeException()); when(attachmentDAOV2.storeAttachment(any())).thenReturn(Mono.empty()); - when(attachmentDAO.deleteAttachment(any())).thenReturn(CompletableFuture.completedFuture(null)); + when(attachmentDAO.deleteAttachment(any())).thenReturn(Mono.empty()); assertThat(migration.run()).isEqualTo(Migration.Result.PARTIAL); } http://git-wip-us.apache.org/repos/asf/james-project/blob/6d72e4d2/server/mailrepository/mailrepository-cassandra/src/main/java/org/apache/james/mailrepository/cassandra/CassandraMailRepository.java ---------------------------------------------------------------------- diff --git a/server/mailrepository/mailrepository-cassandra/src/main/java/org/apache/james/mailrepository/cassandra/CassandraMailRepository.java b/server/mailrepository/mailrepository-cassandra/src/main/java/org/apache/james/mailrepository/cassandra/CassandraMailRepository.java index 1651845..a433ac6 100644 --- a/server/mailrepository/mailrepository-cassandra/src/main/java/org/apache/james/mailrepository/cassandra/CassandraMailRepository.java +++ b/server/mailrepository/mailrepository-cassandra/src/main/java/org/apache/james/mailrepository/cassandra/CassandraMailRepository.java @@ -84,11 +84,10 @@ public class CassandraMailRepository implements MailRepository { @Override public Mail retrieve(MailKey key) { return mailDAO.read(url, key) - .map(optional -> optional.map(this::toMail)) .flatMap(Mono::justOrEmpty) - .flatMap(Function.identity()) - .defaultIfEmpty(null) - .block(); + .flatMap(this::toMail) + .blockOptional() + .orElse(null); } private Mono<Mail> toMail(CassandraMailRepositoryMailDAO.MailDTO mailDTO) { --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org