From 05dfa5fee15b191c3ee1afae0010b70733b1a35b Mon Sep 17 00:00:00 2001
From: neil_a_wilson <neil_a_wilson@localhost>
Date: Mon, 25 Jun 2007 15:51:57 +0000
Subject: [PATCH] Update the pre-parse and pre-operation plugin results to add the ability to skip core processing without skipping post-operation plugins. Also, make sure that post-response plugins are always invoked for all operations that get far enough in their processing to have called the pre-parse plugins.
---
opends/src/server/org/opends/server/core/ModifyOperation.java | 18 ++++++++++++++++++
1 files changed, 18 insertions(+), 0 deletions(-)
diff --git a/opends/src/server/org/opends/server/core/ModifyOperation.java b/opends/src/server/org/opends/server/core/ModifyOperation.java
index 419f8c0..78ba9fe 100644
--- a/opends/src/server/org/opends/server/core/ModifyOperation.java
+++ b/opends/src/server/org/opends/server/core/ModifyOperation.java
@@ -717,6 +717,7 @@
logModifyRequest(this);
logModifyResponse(this);
+ pluginConfigManager.invokePostResponseModifyPlugins(this);
return;
}
else if (preParseResult.sendResponseImmediately())
@@ -725,6 +726,11 @@
logModifyRequest(this);
break modifyProcessing;
}
+ else if (preParseResult.skipCoreProcessing())
+ {
+ skipPostOperation = false;
+ break modifyProcessing;
+ }
// Log the modify request message.
@@ -737,6 +743,7 @@
indicateCancelled(cancelRequest);
processingStopTime = System.currentTimeMillis();
logModifyResponse(this);
+ pluginConfigManager.invokePostResponseModifyPlugins(this);
return;
}
@@ -825,6 +832,7 @@
indicateCancelled(cancelRequest);
processingStopTime = System.currentTimeMillis();
logModifyResponse(this);
+ pluginConfigManager.invokePostResponseModifyPlugins(this);
return;
}
@@ -859,6 +867,7 @@
indicateCancelled(cancelRequest);
processingStopTime = System.currentTimeMillis();
logModifyResponse(this);
+ pluginConfigManager.invokePostResponseModifyPlugins(this);
return;
}
@@ -2473,6 +2482,7 @@
indicateCancelled(cancelRequest);
processingStopTime = System.currentTimeMillis();
logModifyResponse(this);
+ pluginConfigManager.invokePostResponseModifyPlugins(this);
return;
}
@@ -2494,6 +2504,7 @@
processingStopTime = System.currentTimeMillis();
logModifyResponse(this);
+ pluginConfigManager.invokePostResponseModifyPlugins(this);
return;
}
else if (preOpResult.sendResponseImmediately())
@@ -2501,6 +2512,11 @@
skipPostOperation = true;
break modifyProcessing;
}
+ else if (preOpResult.skipCoreProcessing())
+ {
+ skipPostOperation = false;
+ break modifyProcessing;
+ }
}
@@ -2510,6 +2526,7 @@
indicateCancelled(cancelRequest);
processingStopTime = System.currentTimeMillis();
logModifyResponse(this);
+ pluginConfigManager.invokePostResponseModifyPlugins(this);
return;
}
@@ -2861,6 +2878,7 @@
processingStopTime = System.currentTimeMillis();
logModifyResponse(this);
+ pluginConfigManager.invokePostResponseModifyPlugins(this);
return;
}
}
--
Gitblit v1.10.0