From aaff8bbe83e02bba861c5cf1c6645dedc4e0ac1d Mon Sep 17 00:00:00 2001
From: neil_a_wilson <neil_a_wilson@localhost>
Date: Tue, 07 Aug 2007 21:45:40 +0000
Subject: [PATCH] Add support for a new type of plugin which can be used to detect changes and take some action whenever a subordinate entry is modified as a result of a modify DN operation that targets an entry that has one or more children (i.e., a subtree move or subtree rename operation).  At present, subordinate modify DN plugins are not allowed to change the contents of the entry as it is being moved/renamed, but an appropriate API is in place if we decide to add this functionality in the future.

---
 opends/src/server/org/opends/server/messages/PluginMessages.java |   38 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 38 insertions(+), 0 deletions(-)

diff --git a/opends/src/server/org/opends/server/messages/PluginMessages.java b/opends/src/server/org/opends/server/messages/PluginMessages.java
index ce1b4b0..a5acffe 100644
--- a/opends/src/server/org/opends/server/messages/PluginMessages.java
+++ b/opends/src/server/org/opends/server/messages/PluginMessages.java
@@ -852,6 +852,31 @@
 
 
   /**
+   * The message ID for the message that will be used if an exception is thrown
+   * by one of the Directory Server subordinate modify DN plugins.  This takes
+   * four arguments, which are the DN of the plugin configuration entry, the
+   * connection ID for the client, the operation ID for the operation, and a
+   * string representation of the exception that was caught.
+   */
+  public static final int MSGID_PLUGIN_SUBORDINATE_MODIFY_DN_PLUGIN_EXCEPTION =
+       CATEGORY_MASK_PLUGIN | SEVERITY_MASK_SEVERE_ERROR | 75;
+
+
+
+  /**
+   * The message ID for the message that will be used if one of the Directory
+   * Server subordinate modify DN plugins returns null rather than a valid
+   * result.  This takes three arguments, which are the DN of the plugin
+   * configuration entry, the connection ID for the client connection, and the
+   * operation ID for the operation.
+   */
+  public static final int
+       MSGID_PLUGIN_SUBORDINATE_MODIFY_DN_PLUGIN_RETURNED_NULL =
+            CATEGORY_MASK_PLUGIN | SEVERITY_MASK_SEVERE_ERROR | 76;
+
+
+
+  /**
    * Associates a set of generic messages with the message IDs defined in this
    * class.
    */
@@ -1149,6 +1174,19 @@
                     "search operation will be terminated");
 
 
+    registerMessage(MSGID_PLUGIN_SUBORDINATE_MODIFY_DN_PLUGIN_EXCEPTION,
+                    "The subordinate modify DN plugin defined in " +
+                    "configuration entry %s threw an exception when it was " +
+                    "invoked for connection %d operation %d:  %s.  " +
+                    "Processing on this operation will be terminated");
+    registerMessage(MSGID_PLUGIN_SUBORDINATE_MODIFY_DN_PLUGIN_RETURNED_NULL,
+                    "The subordinate modify DN plugin defined in " +
+                    "configuration entry %s returned null when invoked for " +
+                    "connection %d operation %s.  This is an illegal " +
+                    "response, and processing on this operation will be " +
+                    "terminated");
+
+
     registerMessage(MSGID_PLUGIN_INTERMEDIATE_RESPONSE_PLUGIN_EXCEPTION,
                     "The intermediate response plugin defined in " +
                     "configuration entry %s threw an exception when it was " +

--
Gitblit v1.10.0