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/12/10 02:30:06 UTC

[james-project] 03/27: JAMES-2979 Deprecate FileMailQueue

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 927c907c5d5f1895cc44fbfc527a8cbab70dbcc0
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Wed Dec 4 14:09:01 2019 +0700

    JAMES-2979 Deprecate FileMailQueue
---
 server/queue/queue-file/pom.xml                                      | 3 +++
 .../src/main/java/org/apache/james/queue/file/FileMailQueue.java     | 5 +++++
 .../main/java/org/apache/james/queue/file/FileMailQueueFactory.java  | 4 ++++
 3 files changed, 12 insertions(+)

diff --git a/server/queue/queue-file/pom.xml b/server/queue/queue-file/pom.xml
index 07ee0a0..33d70e5 100644
--- a/server/queue/queue-file/pom.xml
+++ b/server/queue/queue-file/pom.xml
@@ -31,6 +31,9 @@
     <packaging>jar</packaging>
 
     <name>Apache James :: Server :: Mail Queue :: File</name>
+    <description>Provides a MailQueue implementation directly leveraging the file system.
+    Deprecated as many management features are missing, as this implementation is not thread safe.
+    Use embedded ActiveMQMailQueue instead.</description>
 
     <dependencies>
         <dependency>
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 3f54528..0bcb954 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
@@ -64,6 +64,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import com.github.fge.lambdas.Throwing;
+
 import reactor.core.publisher.Flux;
 import reactor.core.publisher.Mono;
 
@@ -72,7 +73,11 @@ import reactor.core.publisher.Mono;
  * <p/>
  * On create of the {@link FileMailQueue} the {@link #init()} will get called. This takes care of
  * loading the needed meta-data into memory for fast access.
+ *
+ * @deprecated FileMailQueue implementation is unmaintained, incomplete and not thread safe
+ * We recommend using embedded ActiveMQMailQueue implementation instead
  */
+@Deprecated
 public class FileMailQueue implements ManageableMailQueue {
     private static final Logger LOGGER = LoggerFactory.getLogger(FileMailQueue.class);
 
diff --git a/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java b/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java
index 16e0bc8..87d88a8 100644
--- a/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java
+++ b/server/queue/queue-file/src/main/java/org/apache/james/queue/file/FileMailQueueFactory.java
@@ -35,7 +35,11 @@ import com.google.common.collect.ImmutableSet;
 
 /**
  * {@link MailQueueFactory} implementation which returns {@link FileMailQueue} instances
+ *
+ * @deprecated FileMailQueue implementation is unmaintained, incomplete and not thread safe
+ * We recommend using embedded ActiveMQMailQueue implementation instead
  */
+@Deprecated
 public class FileMailQueueFactory implements MailQueueFactory<ManageableMailQueue> {
 
     private final Map<String, ManageableMailQueue> queues = new HashMap<>();


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