You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2023/03/27 08:51:15 UTC

[directory-ldap-api] branch master updated: Pass the LdapResult diagnostic message to the PasswordException instance (DIRAPI-387)

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

elecharny pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/directory-ldap-api.git


The following commit(s) were added to refs/heads/master by this push:
     new 954301913 Pass the LdapResult diagnostic message to the PasswordException instance (DIRAPI-387)
954301913 is described below

commit 954301913c5e634ee9287bd147995d2155c57d5d
Author: emmanuel lecharny <el...@apache.org>
AuthorDate: Mon Mar 27 10:51:09 2023 +0200

    Pass the LdapResult diagnostic message to the PasswordException instance (DIRAPI-387)
---
 .../ldap/client/template/AbstractPasswordPolicyResponder.java  |  9 ++++++++-
 .../ldap/client/template/exception/PasswordException.java      | 10 ++++++++++
 2 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/ldap/client/api/src/main/java/org/apache/directory/ldap/client/template/AbstractPasswordPolicyResponder.java b/ldap/client/api/src/main/java/org/apache/directory/ldap/client/template/AbstractPasswordPolicyResponder.java
index 5185ee752..295ed7246 100755
--- a/ldap/client/api/src/main/java/org/apache/directory/ldap/client/template/AbstractPasswordPolicyResponder.java
+++ b/ldap/client/api/src/main/java/org/apache/directory/ldap/client/template/AbstractPasswordPolicyResponder.java
@@ -77,7 +77,14 @@ public abstract class AbstractPasswordPolicyResponder implements PasswordPolicyR
     protected PasswordException fail( ResultResponse resultResponse, 
             PasswordPolicyResponse passwordPolicyResponse, ResultCodeEnum resultCode )
     {
-        PasswordException exception = new PasswordException();
+        String diagnosticMessage = "";
+        
+        if  ( ( resultResponse != null ) && resultResponse.getLdapResult() != null )
+        {
+            diagnosticMessage = resultResponse.getLdapResult().getDiagnosticMessage();
+        }
+
+        PasswordException exception = new PasswordException( diagnosticMessage );
         exception.setResultCode( resultCode );
         
         if ( passwordPolicyResponse != null
diff --git a/ldap/client/api/src/main/java/org/apache/directory/ldap/client/template/exception/PasswordException.java b/ldap/client/api/src/main/java/org/apache/directory/ldap/client/template/exception/PasswordException.java
index b68671dfd..7668532f0 100644
--- a/ldap/client/api/src/main/java/org/apache/directory/ldap/client/template/exception/PasswordException.java
+++ b/ldap/client/api/src/main/java/org/apache/directory/ldap/client/template/exception/PasswordException.java
@@ -48,6 +48,16 @@ public class PasswordException extends Exception
         super();
     }
 
+    /**
+     * Creates a new PasswordException instance
+     * 
+     * @param message The message to store
+     */
+    public PasswordException( String message )
+    {
+        super( message );
+    }
+
 
     /**
      * If an LdapException was thrown causing this exception, that