JAMES-2425 MailRepositoryStore::getByPath should create mail repository when 
repository exist


Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/6592d7ce
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/6592d7ce
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/6592d7ce

Branch: refs/heads/master
Commit: 6592d7cebacb4f8b5d4cfae82991700e41f69cac
Parents: 31662d5
Author: benwa <[email protected]>
Authored: Wed Aug 1 16:56:50 2018 +0700
Committer: Benoit Tellier <[email protected]>
Committed: Fri Aug 3 07:57:22 2018 +0700

----------------------------------------------------------------------
 .../org/apache/james/utils/InMemoryMailRepositoryStore.java  | 8 +++-----
 .../apache/james/utils/InMemoryMailRepositoryStoreTest.java  | 8 ++++++++
 2 files changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/6592d7ce/server/container/guice/guice-common/src/main/java/org/apache/james/utils/InMemoryMailRepositoryStore.java
----------------------------------------------------------------------
diff --git 
a/server/container/guice/guice-common/src/main/java/org/apache/james/utils/InMemoryMailRepositoryStore.java
 
b/server/container/guice/guice-common/src/main/java/org/apache/james/utils/InMemoryMailRepositoryStore.java
index b93ea77..b6e1491 100644
--- 
a/server/container/guice/guice-common/src/main/java/org/apache/james/utils/InMemoryMailRepositoryStore.java
+++ 
b/server/container/guice/guice-common/src/main/java/org/apache/james/utils/InMemoryMailRepositoryStore.java
@@ -103,11 +103,9 @@ public class InMemoryMailRepositoryStore implements 
MailRepositoryStore, Configu
 
     @Override
     public Stream<MailRepository> getByPath(MailRepositoryPath path) {
-        return destinationToRepositoryAssociations
-                .keySet()
-                .stream()
-                .filter((MailRepositoryUrl key) -> key.getPath().equals(path))
-                .map(destinationToRepositoryAssociations::get);
+        return urlStore.listDistinct()
+            .filter(url -> url.getPath().equals(path))
+            .map(this::select);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/james-project/blob/6592d7ce/server/container/guice/guice-common/src/test/java/org/apache/james/utils/InMemoryMailRepositoryStoreTest.java
----------------------------------------------------------------------
diff --git 
a/server/container/guice/guice-common/src/test/java/org/apache/james/utils/InMemoryMailRepositoryStoreTest.java
 
b/server/container/guice/guice-common/src/test/java/org/apache/james/utils/InMemoryMailRepositoryStoreTest.java
index cb6cb00..44b91a9 100644
--- 
a/server/container/guice/guice-common/src/test/java/org/apache/james/utils/InMemoryMailRepositoryStoreTest.java
+++ 
b/server/container/guice/guice-common/src/test/java/org/apache/james/utils/InMemoryMailRepositoryStoreTest.java
@@ -197,6 +197,14 @@ public class InMemoryMailRepositoryStoreTest {
     }
 
     @Test
+    public void getByPathShouldReturnRepositoryWhenUrlExists() {
+        urlStore.add(FILE_REPO);
+
+        assertThat(repositoryStore.getByPath(FILE_REPO.getPath()))
+            .isNotEmpty();
+    }
+
+    @Test
     public void getShouldReturnPreviouslyCreatedMailRepository() {
         MailRepository mailRepository = repositoryStore.select(FILE_REPO);
 


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

Reply via email to