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 ro...@apache.org on 2020/07/07 16:02:39 UTC

[james-project] 01/05: [REFACTORING] Relocate LDAP retrying logic from server-utils into data-ldap

This is an automated email from the ASF dual-hosted git repository.

rouazana pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 060413635d4d5044fca8eaf4dad833f2f1fbdfd8
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Tue Jul 7 10:58:02 2020 +0700

    [REFACTORING] Relocate LDAP retrying logic from server-utils into data-ldap
---
 .../org/apache/james/user/ldap/ReadOnlyLDAPUsersDAO.java    |  6 +++---
 .../james/user/ldap}/retry/DoublingRetrySchedule.java       |  4 ++--
 .../james/user/ldap}/retry/ExceptionRetryHandler.java       | 10 +++++-----
 .../org/apache/james/user/ldap}/retry/FaultyService.java    |  2 +-
 .../james/user/ldap}/retry/api/ExceptionRetryingProxy.java  |  2 +-
 .../org/apache/james/user/ldap}/retry/api/RetryHandler.java |  2 +-
 .../apache/james/user/ldap}/retry/api/RetrySchedule.java    |  2 +-
 .../james/user/ldap}/retry/naming/LoggingRetryHandler.java  |  6 +++---
 .../ldap}/retry/naming/NamingExceptionRetryHandler.java     | 10 +++++-----
 .../james/user/ldap}/retry/naming/RetryingContext.java      | 11 ++++++-----
 .../ldap}/retry/naming/directory/RetryingDirContext.java    | 13 +++++++------
 .../user/ldap}/retry/naming/ldap/RetryingLdapContext.java   | 13 +++++++------
 .../james/user/ldap}/retry/DoublingRetryScheduleTest.java   |  4 ++--
 .../james/user/ldap}/retry/ExceptionRetryHandlerTest.java   |  8 ++++----
 .../ldap}/retry/naming/NamingExceptionRetryHandlerTest.java |  8 ++++----
 15 files changed, 52 insertions(+), 49 deletions(-)

diff --git a/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/ReadOnlyLDAPUsersDAO.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/ReadOnlyLDAPUsersDAO.java
index e618774..f85b3f6 100644
--- a/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/ReadOnlyLDAPUsersDAO.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/ReadOnlyLDAPUsersDAO.java
@@ -50,10 +50,10 @@ import org.apache.james.lifecycle.api.Configurable;
 import org.apache.james.user.api.UsersRepositoryException;
 import org.apache.james.user.api.model.User;
 import org.apache.james.user.ldap.api.LdapConstants;
+import org.apache.james.user.ldap.retry.DoublingRetrySchedule;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.naming.ldap.RetryingLdapContext;
 import org.apache.james.user.lib.UsersDAO;
-import org.apache.james.util.retry.DoublingRetrySchedule;
-import org.apache.james.util.retry.api.RetrySchedule;
-import org.apache.james.util.retry.naming.ldap.RetryingLdapContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/DoublingRetrySchedule.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/DoublingRetrySchedule.java
similarity index 96%
rename from server/container/util/src/main/java/org/apache/james/util/retry/DoublingRetrySchedule.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/DoublingRetrySchedule.java
index 2c8d4fe..f9e435e 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/DoublingRetrySchedule.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/DoublingRetrySchedule.java
@@ -18,9 +18,9 @@
  *
  */
 
-package org.apache.james.util.retry;
+package org.apache.james.user.ldap.retry;
 
-import org.apache.james.util.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
 
 
 /**
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/ExceptionRetryHandler.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/ExceptionRetryHandler.java
similarity index 93%
rename from server/container/util/src/main/java/org/apache/james/util/retry/ExceptionRetryHandler.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/ExceptionRetryHandler.java
index 1b4f53b..218048b 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/ExceptionRetryHandler.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/ExceptionRetryHandler.java
@@ -18,11 +18,11 @@
  *
  */
 
-package org.apache.james.util.retry;
+package org.apache.james.user.ldap.retry;
 
-import org.apache.james.util.retry.api.ExceptionRetryingProxy;
-import org.apache.james.util.retry.api.RetryHandler;
-import org.apache.james.util.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy;
+import org.apache.james.user.ldap.retry.api.RetryHandler;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
 
 /**
  * Abstract class <code>ExceptionRetryHandler</code> retries the behaviour defined in abstract method 
@@ -36,7 +36,7 @@ import org.apache.james.util.retry.api.RetrySchedule;
  * The method stubs required to perform the proxy call via <code>operation()</code> may be generated by many means,
  * including explicit code, a <code>DynamicProxy</code> and compile time aspect injection.
  *
- * @see org.apache.james.util.retry.naming.RetryingContext
+ * @see org.apache.james.user.ldap.retry.naming.RetryingContext
  */
 public abstract class ExceptionRetryHandler implements RetryHandler {
 
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/FaultyService.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/FaultyService.java
similarity index 96%
rename from server/container/util/src/main/java/org/apache/james/util/retry/FaultyService.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/FaultyService.java
index f8c85e6..b7b32b5 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/FaultyService.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/FaultyService.java
@@ -17,7 +17,7 @@
  * under the License.                                           *
  ****************************************************************/
 
-package org.apache.james.util.retry;
+package org.apache.james.user.ldap.retry;
 
 public interface FaultyService {
     String faultyService();
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/api/ExceptionRetryingProxy.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/ExceptionRetryingProxy.java
similarity index 97%
rename from server/container/util/src/main/java/org/apache/james/util/retry/api/ExceptionRetryingProxy.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/ExceptionRetryingProxy.java
index fd67316..fb41fe9 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/api/ExceptionRetryingProxy.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/ExceptionRetryingProxy.java
@@ -18,7 +18,7 @@
  *
  */
 
-package org.apache.james.util.retry.api;
+package org.apache.james.user.ldap.retry.api;
 
 
 /**
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/api/RetryHandler.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/RetryHandler.java
similarity index 97%
rename from server/container/util/src/main/java/org/apache/james/util/retry/api/RetryHandler.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/RetryHandler.java
index e67496d..77f7e56 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/api/RetryHandler.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/RetryHandler.java
@@ -18,7 +18,7 @@
  *
  */
 
-package org.apache.james.util.retry.api;
+package org.apache.james.user.ldap.retry.api;
 
 
 /**
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/api/RetrySchedule.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/RetrySchedule.java
similarity index 95%
rename from server/container/util/src/main/java/org/apache/james/util/retry/api/RetrySchedule.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/RetrySchedule.java
index 5ad6c83..6607925 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/api/RetrySchedule.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/api/RetrySchedule.java
@@ -18,7 +18,7 @@
  *
  */
 
-package org.apache.james.util.retry.api;
+package org.apache.james.user.ldap.retry.api;
 
 /**
  * <code>RetrySchedule</code>
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/naming/LoggingRetryHandler.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/LoggingRetryHandler.java
similarity index 91%
rename from server/container/util/src/main/java/org/apache/james/util/retry/naming/LoggingRetryHandler.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/LoggingRetryHandler.java
index 2c8ff64..e9af6f4 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/naming/LoggingRetryHandler.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/LoggingRetryHandler.java
@@ -18,12 +18,12 @@
  *
  */
 
-package org.apache.james.util.retry.naming;
+package org.apache.james.user.ldap.retry.naming;
 
 import javax.naming.NamingException;
 
-import org.apache.james.util.retry.api.ExceptionRetryingProxy;
-import org.apache.james.util.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/naming/NamingExceptionRetryHandler.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/NamingExceptionRetryHandler.java
similarity index 87%
rename from server/container/util/src/main/java/org/apache/james/util/retry/naming/NamingExceptionRetryHandler.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/NamingExceptionRetryHandler.java
index 5395b43..368b5d2 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/naming/NamingExceptionRetryHandler.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/NamingExceptionRetryHandler.java
@@ -18,20 +18,20 @@
  *
  */
 
-package org.apache.james.util.retry.naming;
+package org.apache.james.user.ldap.retry.naming;
 
 import javax.naming.NamingException;
 
-import org.apache.james.util.retry.ExceptionRetryHandler;
-import org.apache.james.util.retry.api.ExceptionRetryingProxy;
-import org.apache.james.util.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.ExceptionRetryHandler;
+import org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
 
 /**
  * Abstract class <code>NamingExceptionRetryHandler</code> narrows the set of Exceptions throwable 
  * by <code>perform</code> to <code>NamingException</code> and its subclasses.
  * <p><code>RuntimeException</code>s are <strong>not</strong> retried.
  * 
- * @see org.apache.james.user.ldap.ExceptionRetryHandler
+ * @see org.apache.james.user.ldap.retry.ExceptionRetryHandler
  * 
  */
 public abstract class NamingExceptionRetryHandler extends ExceptionRetryHandler {
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/naming/RetryingContext.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/RetryingContext.java
similarity index 97%
rename from server/container/util/src/main/java/org/apache/james/util/retry/naming/RetryingContext.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/RetryingContext.java
index 37fc065..65bbd1a 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/naming/RetryingContext.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/RetryingContext.java
@@ -18,7 +18,7 @@
  *
  */
 
-package org.apache.james.util.retry.naming;
+package org.apache.james.user.ldap.retry.naming;
 
 import java.util.Hashtable;
 
@@ -33,15 +33,16 @@ import javax.naming.NamingException;
 import javax.naming.NoInitialContextException;
 import javax.naming.ServiceUnavailableException;
 
-import org.apache.james.util.retry.api.ExceptionRetryingProxy;
-import org.apache.james.util.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.ExceptionRetryHandler;
+import org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
 
 /**
  * <code>RetryingContext</code> retries the methods defined by <code>javax.naming.Context</code>
  * according to the specified schedule. 
  * 
- * @see org.apache.james.util.retry.ExceptionRetryHandler
- * @see org.apache.james.util.retry.api.ExceptionRetryingProxy
+ * @see ExceptionRetryHandler
+ * @see org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy
  * @see javax.naming.Context
  */
 public abstract class RetryingContext implements Context, ExceptionRetryingProxy {
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/naming/directory/RetryingDirContext.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/directory/RetryingDirContext.java
similarity index 97%
rename from server/container/util/src/main/java/org/apache/james/util/retry/naming/directory/RetryingDirContext.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/directory/RetryingDirContext.java
index d630a8c..72c1679 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/naming/directory/RetryingDirContext.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/directory/RetryingDirContext.java
@@ -18,7 +18,7 @@
  *
  */
 
-package org.apache.james.util.retry.naming.directory;
+package org.apache.james.user.ldap.retry.naming.directory;
 
 import javax.naming.Context;
 import javax.naming.Name;
@@ -30,16 +30,17 @@ import javax.naming.directory.ModificationItem;
 import javax.naming.directory.SearchControls;
 import javax.naming.directory.SearchResult;
 
-import org.apache.james.util.retry.api.RetrySchedule;
-import org.apache.james.util.retry.naming.LoggingRetryHandler;
-import org.apache.james.util.retry.naming.RetryingContext;
+import org.apache.james.user.ldap.retry.ExceptionRetryHandler;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.naming.LoggingRetryHandler;
+import org.apache.james.user.ldap.retry.naming.RetryingContext;
 
 /**
  * <code>RetryingDirContext</code> retries the methods defined by <code>javax.naming.directory.DirContext</code>
  * according to the specified schedule. 
  * 
- * @see org.apache.james.util.retry.ExceptionRetryHandler
- * @see org.apache.james.util.retry.api.ExceptionRetryingProxy
+ * @see ExceptionRetryHandler
+ * @see org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy
  * @see javax.naming.directory.DirContext
  */
 public abstract class RetryingDirContext extends RetryingContext implements DirContext {
diff --git a/server/container/util/src/main/java/org/apache/james/util/retry/naming/ldap/RetryingLdapContext.java b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/ldap/RetryingLdapContext.java
similarity index 91%
rename from server/container/util/src/main/java/org/apache/james/util/retry/naming/ldap/RetryingLdapContext.java
rename to server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/ldap/RetryingLdapContext.java
index c144132..0355c09 100644
--- a/server/container/util/src/main/java/org/apache/james/util/retry/naming/ldap/RetryingLdapContext.java
+++ b/server/data/data-ldap/src/main/java/org/apache/james/user/ldap/retry/naming/ldap/RetryingLdapContext.java
@@ -18,7 +18,7 @@
  *
  */
 
-package org.apache.james.util.retry.naming.ldap;
+package org.apache.james.user.ldap.retry.naming.ldap;
 
 import javax.naming.Context;
 import javax.naming.NamingException;
@@ -27,16 +27,17 @@ import javax.naming.ldap.ExtendedRequest;
 import javax.naming.ldap.ExtendedResponse;
 import javax.naming.ldap.LdapContext;
 
-import org.apache.james.util.retry.api.RetrySchedule;
-import org.apache.james.util.retry.naming.LoggingRetryHandler;
-import org.apache.james.util.retry.naming.directory.RetryingDirContext;
+import org.apache.james.user.ldap.retry.ExceptionRetryHandler;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.naming.LoggingRetryHandler;
+import org.apache.james.user.ldap.retry.naming.directory.RetryingDirContext;
 
 /**
  * <code>RetryingLdapContext</code> retries the methods defined by <code>javax.naming.ldap.LdapContext</code>
  * according to the specified schedule. 
  * 
- * @see org.apache.james.util.retry.ExceptionRetryHandler
- * @see org.apache.james.util.retry.api.ExceptionRetryingProxy
+ * @see ExceptionRetryHandler
+ * @see org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy
  * @see javax.naming.ldap.LdapContext
  */
 public abstract class RetryingLdapContext extends RetryingDirContext implements LdapContext {
diff --git a/server/container/util/src/test/java/org/apache/james/util/retry/DoublingRetryScheduleTest.java b/server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/DoublingRetryScheduleTest.java
similarity index 97%
rename from server/container/util/src/test/java/org/apache/james/util/retry/DoublingRetryScheduleTest.java
rename to server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/DoublingRetryScheduleTest.java
index 60f348f..7ec732c 100644
--- a/server/container/util/src/test/java/org/apache/james/util/retry/DoublingRetryScheduleTest.java
+++ b/server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/DoublingRetryScheduleTest.java
@@ -17,11 +17,11 @@
  *   under the License.
  *
  */
-package org.apache.james.util.retry;
+package org.apache.james.user.ldap.retry;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
-import org.apache.james.util.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
 import org.junit.jupiter.api.Test;
 
 class DoublingRetryScheduleTest {
diff --git a/server/container/util/src/test/java/org/apache/james/util/retry/ExceptionRetryHandlerTest.java b/server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/ExceptionRetryHandlerTest.java
similarity index 94%
rename from server/container/util/src/test/java/org/apache/james/util/retry/ExceptionRetryHandlerTest.java
rename to server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/ExceptionRetryHandlerTest.java
index 6e96018..f3d921d 100644
--- a/server/container/util/src/test/java/org/apache/james/util/retry/ExceptionRetryHandlerTest.java
+++ b/server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/ExceptionRetryHandlerTest.java
@@ -17,7 +17,7 @@
  *   under the License.
  *
  */
-package org.apache.james.util.retry;
+package org.apache.james.user.ldap.retry;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
@@ -26,9 +26,9 @@ import java.util.List;
 
 import javax.naming.Context;
 
-import org.apache.james.util.retry.api.ExceptionRetryingProxy;
-import org.apache.james.util.retry.api.RetryHandler;
-import org.apache.james.util.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy;
+import org.apache.james.user.ldap.retry.api.RetryHandler;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
diff --git a/server/container/util/src/test/java/org/apache/james/util/retry/naming/NamingExceptionRetryHandlerTest.java b/server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/naming/NamingExceptionRetryHandlerTest.java
similarity index 92%
rename from server/container/util/src/test/java/org/apache/james/util/retry/naming/NamingExceptionRetryHandlerTest.java
rename to server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/naming/NamingExceptionRetryHandlerTest.java
index 60ef0ad..59c8fb8 100644
--- a/server/container/util/src/test/java/org/apache/james/util/retry/naming/NamingExceptionRetryHandlerTest.java
+++ b/server/data/data-ldap/src/test/java/org/apache/james/user/ldap/retry/naming/NamingExceptionRetryHandlerTest.java
@@ -17,16 +17,16 @@
  *   under the License.
  *
  */
-package org.apache.james.util.retry.naming;
+package org.apache.james.user.ldap.retry.naming;
 
 import static org.assertj.core.api.Assertions.assertThat;
 
 import javax.naming.Context;
 import javax.naming.NamingException;
 
-import org.apache.james.util.retry.api.ExceptionRetryingProxy;
-import org.apache.james.util.retry.api.RetryHandler;
-import org.apache.james.util.retry.api.RetrySchedule;
+import org.apache.james.user.ldap.retry.api.ExceptionRetryingProxy;
+import org.apache.james.user.ldap.retry.api.RetryHandler;
+import org.apache.james.user.ldap.retry.api.RetrySchedule;
 import org.junit.jupiter.api.Test;
 
 class NamingExceptionRetryHandlerTest {


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