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/05/10 11:30:25 UTC

[james-project] 12/17: JAMES-2717 Replace embedded ES in ElasticSearchQuotaSearchExtension

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 20534db8086b97915d7fd61813020089b9c6781b
Author: Tran Tien Duc <dt...@linagora.com>
AuthorDate: Wed May 8 17:04:44 2019 +0700

    JAMES-2717 Replace embedded ES in ElasticSearchQuotaSearchExtension
---
 server/protocols/webadmin/webadmin-mailbox/pom.xml     |  5 +++++
 .../routes/ElasticSearchQuotaSearchExtension.java      | 18 ++++++++++--------
 2 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/server/protocols/webadmin/webadmin-mailbox/pom.xml b/server/protocols/webadmin/webadmin-mailbox/pom.xml
index 9ee023a..e78dfc2 100644
--- a/server/protocols/webadmin/webadmin-mailbox/pom.xml
+++ b/server/protocols/webadmin/webadmin-mailbox/pom.xml
@@ -116,6 +116,11 @@
         </dependency>
         <dependency>
             <groupId>${james.groupId}</groupId>
+            <artifactId>james-server-testing</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>${james.groupId}</groupId>
             <artifactId>james-server-util</artifactId>
         </dependency>
         <dependency>
diff --git a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java
index d1685c4..8ca37ca 100644
--- a/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java
+++ b/server/protocols/webadmin/webadmin-mailbox/src/test/java/org/apache/james/webadmin/routes/ElasticSearchQuotaSearchExtension.java
@@ -24,10 +24,10 @@ import static org.mockito.Mockito.mock;
 import java.util.concurrent.Executors;
 import java.util.concurrent.ThreadFactory;
 
+import org.apache.james.backends.es.DockerElasticSearch;
+import org.apache.james.backends.es.DockerElasticSearchSingleton;
 import org.apache.james.backends.es.ElasticSearchConfiguration;
 import org.apache.james.backends.es.ElasticSearchIndexer;
-import org.apache.james.backends.es.EmbeddedElasticSearch;
-import org.apache.james.backends.es.utils.TestingClientProvider;
 import org.apache.james.dnsservice.api.DNSService;
 import org.apache.james.domainlist.memory.MemoryDomainList;
 import org.apache.james.mailbox.inmemory.manager.InMemoryIntegrationResources;
@@ -51,19 +51,21 @@ import org.junit.rules.TemporaryFolder;
 
 public class ElasticSearchQuotaSearchExtension implements ParameterResolver, BeforeEachCallback, AfterEachCallback {
 
+    private final DockerElasticSearch elasticSearch = DockerElasticSearchSingleton.INSTANCE;
     private WebAdminQuotaSearchTestSystem restQuotaSearchTestSystem;
     private TemporaryFolder temporaryFolder = new TemporaryFolder();
-    private EmbeddedElasticSearch embeddedElasticSearch = new EmbeddedElasticSearch(temporaryFolder);
 
     @Override
     public void beforeEach(ExtensionContext context) {
         try {
             temporaryFolder.create();
-            embeddedElasticSearch.before();
+            elasticSearch.start();
 
             Client client = QuotaSearchIndexCreationUtil.prepareDefaultClient(
-                new TestingClientProvider(embeddedElasticSearch.getNode()).get(),
-                ElasticSearchConfiguration.DEFAULT_CONFIGURATION);
+                elasticSearch.clientProvider().get(),
+                ElasticSearchConfiguration.builder()
+                    .addHost(elasticSearch.getTcpHost())
+                    .build());
 
             InMemoryIntegrationResources resources = InMemoryIntegrationResources.defaultResources();
 
@@ -94,7 +96,7 @@ public class ElasticSearchQuotaSearchExtension implements ParameterResolver, Bef
                 usersRepository,
                 domainList,
                 resources.getCurrentQuotaManager(),
-                () -> embeddedElasticSearch.awaitForElasticSearch());
+                () -> elasticSearch.awaitForElasticSearch());
 
             restQuotaSearchTestSystem = new WebAdminQuotaSearchTestSystem(quotaSearchTestSystem);
         } catch (Exception e) {
@@ -106,7 +108,7 @@ public class ElasticSearchQuotaSearchExtension implements ParameterResolver, Bef
     public void afterEach(ExtensionContext context) {
         restQuotaSearchTestSystem.getWebAdminServer().destroy();
 
-        embeddedElasticSearch.after();
+        elasticSearch.cleanUpData();
         temporaryFolder.delete();
     }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org