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 2019/01/15 03:21:43 UTC
[08/30] james-project git commit: MAILBOX-367 Simplify
RabbitMQManagement creations
MAILBOX-367 Simplify RabbitMQManagement creations
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/90cabdd6
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/90cabdd6
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/90cabdd6
Branch: refs/heads/master
Commit: 90cabdd66b4b5ee42c420b352c93e3e1ce9321ab
Parents: 64d4cdb
Author: datph <dp...@linagora.com>
Authored: Wed Jan 9 06:15:10 2019 +0700
Committer: Benoit Tellier <bt...@linagora.com>
Committed: Tue Jan 15 09:56:28 2019 +0700
----------------------------------------------------------------------
.../james/backend/rabbitmq/RabbitMQExtension.java | 8 ++++++++
.../queue/rabbitmq/RabbitMQMailQueueManagement.java | 7 +++++++
.../RabbitMQMailQueueConfigurationChangeTest.java | 9 +--------
.../james/queue/rabbitmq/RabbitMQMailQueueTest.java | 10 +---------
.../queue/rabbitmq/RabbitMqMailQueueFactoryTest.java | 13 ++-----------
5 files changed, 19 insertions(+), 28 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/james-project/blob/90cabdd6/backends-common/rabbitmq/src/test/java/org/apache/james/backend/rabbitmq/RabbitMQExtension.java
----------------------------------------------------------------------
diff --git a/backends-common/rabbitmq/src/test/java/org/apache/james/backend/rabbitmq/RabbitMQExtension.java b/backends-common/rabbitmq/src/test/java/org/apache/james/backend/rabbitmq/RabbitMQExtension.java
index a64c95f..47e6488 100644
--- a/backends-common/rabbitmq/src/test/java/org/apache/james/backend/rabbitmq/RabbitMQExtension.java
+++ b/backends-common/rabbitmq/src/test/java/org/apache/james/backend/rabbitmq/RabbitMQExtension.java
@@ -89,6 +89,14 @@ public class RabbitMQExtension implements BeforeAllCallback, BeforeEachCallback,
return connectionFactory;
}
+ public RabbitMQManagementAPI managementAPI() throws Exception {
+ return RabbitMQManagementAPI.from(RabbitMQConfiguration.builder()
+ .amqpUri(rabbitMQ.amqpUri())
+ .managementUri(rabbitMQ.managementUri())
+ .managementCredentials(DEFAULT_MANAGEMENT_CREDENTIAL)
+ .build());
+ }
+
private RabbitMQConnectionFactory createRabbitConnectionFactory() throws URISyntaxException {
RabbitMQConfiguration rabbitMQConfiguration = RabbitMQConfiguration.builder()
.amqpUri(rabbitMQ.amqpUri())
http://git-wip-us.apache.org/repos/asf/james-project/blob/90cabdd6/server/queue/queue-rabbitmq/src/main/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueManagement.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-rabbitmq/src/main/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueManagement.java b/server/queue/queue-rabbitmq/src/main/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueManagement.java
index 91e5ba5..4d0c261 100644
--- a/server/queue/queue-rabbitmq/src/main/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueManagement.java
+++ b/server/queue/queue-rabbitmq/src/main/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueManagement.java
@@ -27,6 +27,8 @@ import org.apache.james.backend.rabbitmq.RabbitMQConfiguration;
import org.apache.james.backend.rabbitmq.RabbitMQManagementAPI;
import org.apache.james.util.OptionalUtils;
+import com.google.common.annotations.VisibleForTesting;
+
public class RabbitMQMailQueueManagement {
private final RabbitMQManagementAPI api;
@@ -36,6 +38,11 @@ public class RabbitMQMailQueueManagement {
api = RabbitMQManagementAPI.from(configuration);
}
+ @VisibleForTesting
+ RabbitMQMailQueueManagement(RabbitMQManagementAPI api) {
+ this.api = api;
+ }
+
Stream<MailQueueName> listCreatedMailQueueNames() {
return api.listQueues()
.stream()
http://git-wip-us.apache.org/repos/asf/james-project/blob/90cabdd6/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueConfigurationChangeTest.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueConfigurationChangeTest.java b/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueConfigurationChangeTest.java
index e7b2ab5..46dfdbe 100644
--- a/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueConfigurationChangeTest.java
+++ b/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueConfigurationChangeTest.java
@@ -21,7 +21,6 @@ package org.apache.james.queue.rabbitmq;
import static java.time.temporal.ChronoUnit.HOURS;
import static java.time.temporal.ChronoUnit.MINUTES;
-import static org.apache.james.backend.rabbitmq.RabbitMQFixture.DEFAULT_MANAGEMENT_CREDENTIAL;
import static org.apache.james.queue.api.Mails.defaultMail;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
@@ -33,7 +32,6 @@ import java.util.function.Function;
import java.util.stream.IntStream;
import java.util.stream.Stream;
-import org.apache.james.backend.rabbitmq.RabbitMQConfiguration;
import org.apache.james.backend.rabbitmq.RabbitMQExtension;
import org.apache.james.backends.cassandra.CassandraCluster;
import org.apache.james.backends.cassandra.CassandraClusterExtension;
@@ -101,13 +99,8 @@ class RabbitMQMailQueueConfigurationChangeTest {
clock = new UpdatableTickingClock(IN_SLICE_1);
random = ThreadLocalRandom.current();
- RabbitMQConfiguration rabbitMQConfiguration = RabbitMQConfiguration.builder()
- .amqpUri(rabbitMQExtension.getRabbitMQ().amqpUri())
- .managementUri(rabbitMQExtension.getRabbitMQ().managementUri())
- .managementCredentials(DEFAULT_MANAGEMENT_CREDENTIAL)
- .build();
rabbitClient = new RabbitClient(rabbitMQExtension.getRabbitChannelPool());
- mqManagementApi = new RabbitMQMailQueueManagement(rabbitMQConfiguration);
+ mqManagementApi = new RabbitMQMailQueueManagement(rabbitMQExtension.managementAPI());
}
@AfterEach
http://git-wip-us.apache.org/repos/asf/james-project/blob/90cabdd6/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueTest.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueTest.java b/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueTest.java
index 7d5885e..94b68e2 100644
--- a/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueTest.java
+++ b/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMQMailQueueTest.java
@@ -20,7 +20,6 @@
package org.apache.james.queue.rabbitmq;
import static java.time.temporal.ChronoUnit.HOURS;
-import static org.apache.james.backend.rabbitmq.RabbitMQFixture.DEFAULT_MANAGEMENT_CREDENTIAL;
import static org.apache.james.queue.api.Mails.defaultMail;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatCode;
@@ -33,7 +32,6 @@ import java.util.stream.IntStream;
import java.util.stream.Stream;
import org.apache.james.backend.rabbitmq.DockerRabbitMQ;
-import org.apache.james.backend.rabbitmq.RabbitMQConfiguration;
import org.apache.james.backend.rabbitmq.RabbitMQExtension;
import org.apache.james.backends.cassandra.CassandraCluster;
import org.apache.james.backends.cassandra.CassandraClusterExtension;
@@ -113,12 +111,6 @@ public class RabbitMQMailQueueTest implements ManageableMailQueueContract, MailQ
.build(),
mimeMessageStoreFactory);
- RabbitMQConfiguration rabbitMQConfiguration = RabbitMQConfiguration.builder()
- .amqpUri(rabbitMQ.amqpUri())
- .managementUri(rabbitMQ.managementUri())
- .managementCredentials(DEFAULT_MANAGEMENT_CREDENTIAL)
- .build();
-
RabbitClient rabbitClient = new RabbitClient(rabbitMQExtension.getRabbitChannelPool());
RabbitMQMailQueueFactory.PrivateFactory factory = new RabbitMQMailQueueFactory.PrivateFactory(
metricTestSystem.getSpyMetricFactory(),
@@ -129,7 +121,7 @@ public class RabbitMQMailQueueTest implements ManageableMailQueueContract, MailQ
mailQueueViewFactory,
clock,
new RawMailQueueItemDecoratorFactory());
- mqManagementApi = new RabbitMQMailQueueManagement(rabbitMQConfiguration);
+ mqManagementApi = new RabbitMQMailQueueManagement(rabbitMQExtension.managementAPI());
mailQueueFactory = new RabbitMQMailQueueFactory(rabbitClient, mqManagementApi, factory);
mailQueue = mailQueueFactory.createQueue(SPOOL);
}
http://git-wip-us.apache.org/repos/asf/james-project/blob/90cabdd6/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMqMailQueueFactoryTest.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMqMailQueueFactoryTest.java b/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMqMailQueueFactoryTest.java
index f152663..24088dc 100644
--- a/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMqMailQueueFactoryTest.java
+++ b/server/queue/queue-rabbitmq/src/test/java/org/apache/james/queue/rabbitmq/RabbitMqMailQueueFactoryTest.java
@@ -19,19 +19,16 @@
package org.apache.james.queue.rabbitmq;
-import static org.apache.james.backend.rabbitmq.RabbitMQFixture.DEFAULT_MANAGEMENT_CREDENTIAL;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-import java.net.URISyntaxException;
import java.time.Clock;
import java.time.Duration;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
-import org.apache.james.backend.rabbitmq.RabbitMQConfiguration;
import org.apache.james.backend.rabbitmq.RabbitMQExtension;
import org.apache.james.blob.api.HashBlobId;
import org.apache.james.blob.mail.MimeMessageStore;
@@ -57,19 +54,13 @@ class RabbitMqMailQueueFactoryTest implements MailQueueFactoryContract<RabbitMQM
private RabbitMQMailQueueManagement mqManagementApi;
@BeforeEach
- void setup() throws URISyntaxException {
+ void setup() throws Exception {
MimeMessageStore.Factory mimeMessageStoreFactory = mock(MimeMessageStore.Factory.class);
MailQueueView.Factory mailQueueViewFactory = mock(MailQueueView.Factory.class);
MailQueueView mailQueueView = mock(MailQueueView.class);
when(mailQueueViewFactory.create(any()))
.thenReturn(mailQueueView);
- RabbitMQConfiguration rabbitMQConfiguration = RabbitMQConfiguration.builder()
- .amqpUri(rabbitMQExtension.getRabbitMQ().amqpUri())
- .managementUri(rabbitMQExtension.getRabbitMQ().managementUri())
- .managementCredentials(DEFAULT_MANAGEMENT_CREDENTIAL)
- .build();
-
RabbitClient rabbitClient = new RabbitClient(rabbitMQExtension.getRabbitChannelPool());
RabbitMQMailQueueFactory.PrivateFactory factory = new RabbitMQMailQueueFactory.PrivateFactory(
new NoopMetricFactory(),
@@ -80,7 +71,7 @@ class RabbitMqMailQueueFactoryTest implements MailQueueFactoryContract<RabbitMQM
mailQueueViewFactory,
Clock.systemUTC(),
new RawMailQueueItemDecoratorFactory());
- mqManagementApi = new RabbitMQMailQueueManagement(rabbitMQConfiguration);
+ mqManagementApi = new RabbitMQMailQueueManagement(rabbitMQExtension.managementAPI());
mailQueueFactory = new RabbitMQMailQueueFactory(rabbitClient, mqManagementApi, factory);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org