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 <[email protected]>
Authored: Thu Jan 18 17:37:10 2018 +0700
Committer: benwa <[email protected]>
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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to