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 2018/01/19 12:07:20 UTC

[06/14] james-project git commit: JAMES-2289 MailQueue should return their name

JAMES-2289 MailQueue should return their name


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

Branch: refs/heads/master
Commit: 9a6e2084040e5ca7a121c7c5fdffa7414579b7b1
Parents: 318324a
Author: benwa <bt...@linagora.com>
Authored: Thu Jan 18 17:37:10 2018 +0700
Committer: benwa <bt...@linagora.com>
Committed: Fri Jan 19 18:55:42 2018 +0700

----------------------------------------------------------------------
 .../mailets/remote/delivery/RemoteDeliveryTest.java      | 11 +++++++++--
 .../main/java/org/apache/james/queue/api/MailQueue.java  |  2 ++
 .../java/org/apache/james/queue/file/FileMailQueue.java  |  9 ++++++++-
 .../java/org/apache/james/queue/jms/JMSMailQueue.java    |  5 +++++
 .../queue/library/AbstractMailQueueFactoryTest.java      |  5 +++++
 .../james/queue/memory/MemoryMailQueueFactory.java       |  7 ++++++-
 6 files changed, 35 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/9a6e2084/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/remote/delivery/RemoteDeliveryTest.java
----------------------------------------------------------------------
diff --git a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/remote/delivery/RemoteDeliveryTest.java b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/remote/delivery/RemoteDeliveryTest.java
index 7d76ebc..d21a338 100644
--- a/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/remote/delivery/RemoteDeliveryTest.java
+++ b/server/mailet/mailets/src/test/java/org/apache/james/transport/mailets/remote/delivery/RemoteDeliveryTest.java
@@ -53,12 +53,19 @@ public class RemoteDeliveryTest {
 
     private static class FakeMailQueue implements MailQueue {
         private final List<Mail> enqueuedMail;
+        private final String name;
 
-        private FakeMailQueue() {
+        private FakeMailQueue(String name) {
+            this.name = name;
             this.enqueuedMail = Lists.newArrayList();
         }
 
         @Override
+        public String getMailQueueName() {
+            return name;
+        }
+
+        @Override
         public void enQueue(Mail mail, long delay, TimeUnit unit) throws MailQueueException {
             enQueue(mail);
         }
@@ -88,7 +95,7 @@ public class RemoteDeliveryTest {
     @Before
     public void setUp() {
         MailQueueFactory queueFactory = mock(MailQueueFactory.class);
-        mailQueue = new FakeMailQueue();
+        mailQueue = new FakeMailQueue("any");
         when(queueFactory.getQueue(RemoteDeliveryConfiguration.OUTGOING)).thenReturn(mailQueue);
         remoteDelivery = new RemoteDelivery(mock(DNSService.class), mock(DomainList.class), queueFactory, mock(MetricFactory.class), RemoteDelivery.ThreadState.DO_NOT_START_THREADS);
     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/9a6e2084/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java b/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java
index f78835f..cb88b9a 100644
--- a/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java
+++ b/server/queue/queue-api/src/main/java/org/apache/james/queue/api/MailQueue.java
@@ -62,6 +62,8 @@ public interface MailQueue {
      */
     int NO_DELAY = -1;
 
+    String getMailQueueName();
+
     /**
      * Enqueue the Mail to the queue. The given delay and unit are used to
      * calculate the time when the Mail will be available for deQueue

http://git-wip-us.apache.org/repos/asf/james-project/blob/9a6e2084/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java b/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java
index c971d6f..373e8cf 100644
--- a/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java
+++ b/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueue.java
@@ -75,15 +75,22 @@ public class FileMailQueue implements ManageableMailQueue {
     private static final String NEXT_DELIVERY = "FileQueueNextDelivery";
     private static final int SPLITCOUNT = 10;
     private static final SecureRandom RANDOM = new SecureRandom();
+    private final String queueName;
 
     public FileMailQueue(MailQueueItemDecoratorFactory mailQueueItemDecoratorFactory, File parentDir, String queuename, boolean sync) throws IOException {
         this.mailQueueItemDecoratorFactory = mailQueueItemDecoratorFactory;
         this.sync = sync;
-        this.queueDir = new File(parentDir, queuename);
+        this.queueName = queuename;
+        this.queueDir = new File(parentDir, queueName);
         this.queueDirName = queueDir.getAbsolutePath();
         init();
     }
 
+    @Override
+    public String getMailQueueName() {
+        return queueName;
+    }
+
     private void init() throws IOException {
 
         for (int i = 1; i <= SPLITCOUNT; i++) {

http://git-wip-us.apache.org/repos/asf/james-project/blob/9a6e2084/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java b/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java
index 2352bc5..1583c85 100644
--- a/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java
+++ b/server/queue/queue-jms/src/main/java/org/apache/james/queue/jms/JMSMailQueue.java
@@ -151,6 +151,11 @@ public class JMSMailQueue implements ManageableMailQueue, JMSSupport, MailPriori
         this.mailQueueSize = metricFactory.generate("mailQueueSize:" + queueName);
     }
 
+    @Override
+    public String getMailQueueName() {
+        return queueName;
+    }
+
     /**
      * <p>
      * Dequeues a mail when it is ready to process. As JMS does not support delay scheduling out-of-the box,

http://git-wip-us.apache.org/repos/asf/james-project/blob/9a6e2084/server/queue/queue-jms/src/test/java/org/apache/james/queue/library/AbstractMailQueueFactoryTest.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-jms/src/test/java/org/apache/james/queue/library/AbstractMailQueueFactoryTest.java b/server/queue/queue-jms/src/test/java/org/apache/james/queue/library/AbstractMailQueueFactoryTest.java
index 90356ea..2737e81 100644
--- a/server/queue/queue-jms/src/test/java/org/apache/james/queue/library/AbstractMailQueueFactoryTest.java
+++ b/server/queue/queue-jms/src/test/java/org/apache/james/queue/library/AbstractMailQueueFactoryTest.java
@@ -54,6 +54,11 @@ public class AbstractMailQueueFactoryTest {
                 return new ManageableMailQueue() {
 
                     @Override
+                    public String getMailQueueName() {
+                        return "name";
+                    }
+
+                    @Override
                     public void enQueue(Mail mail, long delay, TimeUnit unit) throws MailQueueException {
 
                     }

http://git-wip-us.apache.org/repos/asf/james-project/blob/9a6e2084/server/queue/queue-memory/src/main/java/org/apache/james/queue/memory/MemoryMailQueueFactory.java
----------------------------------------------------------------------
diff --git a/server/queue/queue-memory/src/main/java/org/apache/james/queue/memory/MemoryMailQueueFactory.java b/server/queue/queue-memory/src/main/java/org/apache/james/queue/memory/MemoryMailQueueFactory.java
index 214e1d3..95266d5 100644
--- a/server/queue/queue-memory/src/main/java/org/apache/james/queue/memory/MemoryMailQueueFactory.java
+++ b/server/queue/queue-memory/src/main/java/org/apache/james/queue/memory/MemoryMailQueueFactory.java
@@ -73,7 +73,7 @@ public class MemoryMailQueueFactory implements MailQueueFactory {
         private final MailQueueItemDecoratorFactory mailQueueItemDecoratorFactory;
         private final String name;
 
-        public MemoryMailQueue(String name,MailQueueItemDecoratorFactory mailQueueItemDecoratorFactory) {
+        public MemoryMailQueue(String name, MailQueueItemDecoratorFactory mailQueueItemDecoratorFactory) {
             this.mailItems = new LinkedBlockingDeque<>();
             this.inProcessingMailItems = new LinkedBlockingDeque<>();
             this.name = name;
@@ -81,6 +81,11 @@ public class MemoryMailQueueFactory implements MailQueueFactory {
         }
 
         @Override
+        public String getMailQueueName() {
+            return name;
+        }
+
+        @Override
         public void enQueue(Mail mail, long delay, TimeUnit unit) throws MailQueueException {
             enQueue(mail);
         }


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