From 9f0eb1a26745e51dc39184882d542583ba4ab7e5 Mon Sep 17 00:00:00 2001
From: neil_a_wilson <neil_a_wilson@localhost>
Date: Wed, 14 Mar 2007 20:32:37 +0000
Subject: [PATCH] Update the LDAP client tools so that they provide error messages in a more readable format. They can now generate up to four lines of output in the following order:
---
opends/src/server/org/opends/server/protocols/ldap/LDAPException.java | 121 +++++++++++++++++++++++++++++++++++++---
1 files changed, 112 insertions(+), 9 deletions(-)
diff --git a/opends/src/server/org/opends/server/protocols/ldap/LDAPException.java b/opends/src/server/org/opends/server/protocols/ldap/LDAPException.java
index 83fef46..2adf8a2 100644
--- a/opends/src/server/org/opends/server/protocols/ldap/LDAPException.java
+++ b/opends/src/server/org/opends/server/protocols/ldap/LDAPException.java
@@ -28,6 +28,7 @@
+import org.opends.server.types.DN;
@@ -38,9 +39,6 @@
public class LDAPException
extends Exception
{
-
-
-
/**
* The serial version identifier required to satisfy the compiler because this
* class extends <CODE>java.lang.Exception</CODE>, which implements the
@@ -52,12 +50,17 @@
- // The message ID for the message associated with this initialization
- // exception.
- private int messageID;
+ // The matched DN associated with this LDAP exception.
+ private final DN matchedDN;
+
+ // The message ID for the message associated with this LDAP exception.
+ private final int messageID;
// The LDAP result code associated with this exception.
- private int resultCode;
+ private final int resultCode;
+
+ // The server-provided error message for this LDAP exception.
+ private final String errorMessage;
@@ -72,9 +75,33 @@
{
super(message);
-
this.resultCode = resultCode;
this.messageID = messageID;
+
+ errorMessage = null;
+ matchedDN = null;
+ }
+
+
+
+ /**
+ * Creates a new LDAP exception with the provided message.
+ *
+ * @param resultCode The LDAP result code associated with this exception.
+ * @param errorMessage The server-provided error message.
+ * @param messageID The unique identifier for the associated message.
+ * @param message The message that explains the problem that occurred.
+ */
+ public LDAPException(int resultCode, String errorMessage, int messageID,
+ String message)
+ {
+ super(message);
+
+ this.resultCode = resultCode;
+ this.errorMessage = errorMessage;
+ this.messageID = messageID;
+
+ matchedDN = null;
}
@@ -93,9 +120,59 @@
{
super(message, cause);
-
this.resultCode = resultCode;
this.messageID = messageID;
+
+ errorMessage = null;
+ matchedDN = null;
+ }
+
+
+
+ /**
+ * Creates a new LDAP exception with the provided message and root cause.
+ *
+ * @param resultCode The LDAP result code associated with this exception.
+ * @param errorMessage The server-provided error message.
+ * @param messageID The unique identifier for the associated message.
+ * @param message The message that explains the problem that occurred.
+ * @param cause The exception that was caught to trigger this
+ * exception.
+ */
+ public LDAPException(int resultCode, String errorMessage, int messageID,
+ String message, Throwable cause)
+ {
+ super(message, cause);
+
+ this.resultCode = resultCode;
+ this.errorMessage = errorMessage;
+ this.messageID = messageID;
+
+ matchedDN = null;
+ }
+
+
+
+ /**
+ * Creates a new LDAP exception with the provided message and root cause.
+ *
+ * @param resultCode The LDAP result code associated with this exception.
+ * @param errorMessage The server-provided error message.
+ * @param messageID The unique identifier for the associated message.
+ * @param message The message that explains the problem that occurred.
+ * @param matchedDN The matched DN returned by the server.
+ * @param cause The exception that was caught to trigger this
+ * exception.
+ */
+ public LDAPException(int resultCode, String errorMessage, int messageID,
+ String message, DN matchedDN, Throwable cause)
+ {
+ super(message, cause);
+
+ this.resultCode = resultCode;
+ this.errorMessage = errorMessage;
+ this.messageID = messageID;
+ this.matchedDN = matchedDN;
}
@@ -113,6 +190,19 @@
/**
+ * Retrieves the server-provided error message for this exception.
+ *
+ * @return The server-provided error message for this exception, or
+ * {@code null} if none was given.
+ */
+ public String getErrorMessage()
+ {
+ return errorMessage;
+ }
+
+
+
+ /**
* Retrieves the unique identifier for the associated message.
*
* @return The unique identifier for the associated message.
@@ -121,5 +211,18 @@
{
return messageID;
}
+
+
+
+ /**
+ * Retrieves the matched DN for this exception.
+ *
+ * @return The matched DN for this exception, or {@code null} if there is
+ * none.
+ */
+ public DN getMatchedDN()
+ {
+ return matchedDN;
+ }
}
--
Gitblit v1.10.0