|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.opends.server.api.plugin.DirectoryServerPlugin<ReferentialIntegrityPluginCfg>
org.opends.server.plugins.ReferentialIntegrityPlugin
public class ReferentialIntegrityPlugin
This class implements a Directory Server post operation plugin that performs
Referential Integrity processing on successful delete and modify DN
operations. The plugin uses a set of configuration criteria to determine
what attribute types to check referential integrity on, and, the set of
base DNs to search for entries that might need referential integrity
processing. If none of these base DNs are specified in the configuration,
then the public naming contexts are used as the base DNs by default.
The plugin also has an option to process changes in background using
a thread that wakes up periodically looking for change records in a log
file.
Field Summary | |
---|---|
static java.lang.String |
MODIFYDN_DNS
Used to save a map in the modifyDN operation attachment map that holds the old entry DNs and the new entry DNs related to a modify DN rename to new superior operation. |
Constructor Summary | |
---|---|
ReferentialIntegrityPlugin()
|
Method Summary | |
---|---|
ConfigChangeResult |
applyConfigurationChange(ReferentialIntegrityPluginCfg newConfiguration)
Applies the configuration changes to this change listener. |
PluginResult.PostOperation |
doPostOperation(PostOperationDeleteOperation deleteOperation)
Performs any necessary processing that should be done after the Directory Server has completed the core processing for a delete operation but before the response has been sent to the client. |
PluginResult.PostOperation |
doPostOperation(PostOperationModifyDNOperation modifyDNOperation)
Performs any necessary processing that should be done after the Directory Server has completed the core processing for a modify DN operation but before the response has been sent to the client. |
void |
finalizePlugin()
Performs any necessary finalization for this plugin. |
java.lang.String |
getShutdownListenerName()
Return the listener name. |
void |
initializePlugin(java.util.Set<PluginType> pluginTypes,
ReferentialIntegrityPluginCfg pluginCfg)
Performs any initialization necessary for this plugin. |
boolean |
isConfigurationAcceptable(PluginCfg configuration,
java.util.List<Message> unacceptableReasons)
Indicates whether the provided configuration is acceptable for this plugin. |
boolean |
isConfigurationChangeAcceptable(ReferentialIntegrityPluginCfg configuration,
java.util.List<Message> unacceptableReasons)
Indicates whether the proposed change to the configuration is acceptable to this change listener. |
void |
processServerShutdown(Message reason)
Process a server shutdown. |
PluginResult.SubordinateModifyDN |
processSubordinateModifyDN(SubordinateModifyDNOperation modifyDNOperation,
Entry oldEntry,
Entry newEntry,
java.util.List<Modification> modifications)
Performs any necessary processing that should be done whenever a subordinate entry is moved or renamed as part of a modify DN operation. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String MODIFYDN_DNS
Constructor Detail |
---|
public ReferentialIntegrityPlugin()
Method Detail |
---|
public final void initializePlugin(java.util.Set<PluginType> pluginTypes, ReferentialIntegrityPluginCfg pluginCfg) throws ConfigException
initializePlugin
in class DirectoryServerPlugin<ReferentialIntegrityPluginCfg>
pluginTypes
- The set of plugin types that indicate the
ways in which this plugin will be invoked.pluginCfg
- The configuration for this plugin.
ConfigException
- If the provided entry does not contain
a valid configuration for this plugin.public ConfigChangeResult applyConfigurationChange(ReferentialIntegrityPluginCfg newConfiguration)
applyConfigurationChange
in interface ConfigurationChangeListener<ReferentialIntegrityPluginCfg>
newConfiguration
- The new configuration containing the changes.
public boolean isConfigurationAcceptable(PluginCfg configuration, java.util.List<Message> unacceptableReasons)
isConfigurationAcceptable
in class DirectoryServerPlugin<ReferentialIntegrityPluginCfg>
configuration
- The plugin configuration for which
to make the determination.unacceptableReasons
- A list that may be used to hold the
reasons that the provided
configuration is not acceptable.
true
if the provided configuration is acceptable
for this plugin, or false
if not.public boolean isConfigurationChangeAcceptable(ReferentialIntegrityPluginCfg configuration, java.util.List<Message> unacceptableReasons)
isConfigurationChangeAcceptable
in interface ConfigurationChangeListener<ReferentialIntegrityPluginCfg>
configuration
- The new configuration containing the changes.unacceptableReasons
- A list that can be used to hold messages about why the
provided configuration is not acceptable.
true
if the proposed change is
acceptable, or false
if it is not.public PluginResult.PostOperation doPostOperation(PostOperationModifyDNOperation modifyDNOperation)
doPostOperation
in class DirectoryServerPlugin<ReferentialIntegrityPluginCfg>
modifyDNOperation
- The modify DN operation for which
processing has completed but no
response has yet been sent.
public PluginResult.PostOperation doPostOperation(PostOperationDeleteOperation deleteOperation)
doPostOperation
in class DirectoryServerPlugin<ReferentialIntegrityPluginCfg>
deleteOperation
- The delete operation for which
processing has completed but no
response has yet been sent.
public PluginResult.SubordinateModifyDN processSubordinateModifyDN(SubordinateModifyDNOperation modifyDNOperation, Entry oldEntry, Entry newEntry, java.util.List<Modification> modifications)
processSubordinateModifyDN
in class DirectoryServerPlugin<ReferentialIntegrityPluginCfg>
modifyDNOperation
- The modify DN operation with which the
subordinate entry is associated.oldEntry
- The subordinate entry prior to the
move/rename operation.newEntry
- The subordinate enry after the
move/rename operation.modifications
- A list into which any modifications
made to the target entry should be
placed.
public java.lang.String getShutdownListenerName()
getShutdownListenerName
in interface ServerShutdownListener
public final void finalizePlugin()
finalizePlugin
in class DirectoryServerPlugin<ReferentialIntegrityPluginCfg>
public void processServerShutdown(Message reason)
processServerShutdown
in interface ServerShutdownListener
reason
- The reason message for the shutdown.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |