Package org.opends.server.plugins
Class PasswordPolicyImportPlugin
java.lang.Object
org.opends.server.api.plugin.DirectoryServerPlugin<PasswordPolicyImportPluginCfg>
org.opends.server.plugins.PasswordPolicyImportPlugin
- All Implemented Interfaces:
ConfigurationChangeListener<PasswordPolicyImportPluginCfg>
,ImportTaskListener
public final class PasswordPolicyImportPlugin
extends DirectoryServerPlugin<PasswordPolicyImportPluginCfg>
implements ConfigurationChangeListener<PasswordPolicyImportPluginCfg>, ImportTaskListener
This class implements a Directory Server plugin that performs various password policy processing during an LDIF
import. In particular, it ensures that all the password values are properly encoded before they are stored.
-
Constructor Summary
ConstructorDescriptionCreates a new instance of this Directory Server plugin. -
Method Summary
Modifier and TypeMethodDescriptionapplyConfigurationChange
(PasswordPolicyImportPluginCfg configuration) Applies the configuration changes to this change listener.doLDIFImport
(LDIFImportConfig importConfig, Entry entry) Performs any necessary processing that should be done during an LDIF import operation immediately after reading an entry and confirming that it should be imported based on the provided configuration.void
initializePlugin
(Set<PluginType> pluginTypes, PasswordPolicyImportPluginCfg configuration) Performs any initialization necessary for this plugin.boolean
isConfigurationAcceptable
(PasswordPolicyImportPluginCfg config, List<LocalizableMessage> unacceptableReasons) Indicates whether the provided configuration is acceptable for this plugin.boolean
isConfigurationChangeAcceptable
(PasswordPolicyImportPluginCfg configuration, List<LocalizableMessage> unacceptableReasons) Indicates whether the proposed change to the configuration is acceptable to this change listener.void
processImportBegin
(LocalBackend<?> backend, LDIFImportConfig config) Performs any processing that might be necessary just before the server begins processing on an LDIF import task.void
processImportEnd
(LocalBackend<?> backend, LDIFImportConfig config, boolean successful) Performs any processing that might be necessary after the server has completed processing on an LDIF import task.Methods inherited from class org.opends.server.api.plugin.DirectoryServerPlugin
doLDIFImportBegin, doLDIFImportEnd, doPostCommit, doPostCommit, doPostCommit, doPostCommit, doPostConnect, doPostDisconnect, doPostOperation, doPostOperation, doPostOperation, doPostOperation, doPostOperation, doPostOperation, doPostOperation, doPostOperation, doPostOperation, doPostOperation, doPostResponse, doPostResponse, doPostResponse, doPostResponse, doPostResponse, doPostResponse, doPostResponse, doPostResponse, doPostSynchronization, doPostSynchronization, doPostSynchronization, doPostSynchronization, doPreOperation, doPreOperation, doPreOperation, doPreOperation, doPreOperation, doPreOperation, doPreOperation, doPreOperation, doPreParse, doPreParse, doPreParse, doPreParse, doPreParse, doPreParse, doPreParse, doPreParse, doPreParse, doPreParse, doShutdown, doStartup, finalizePlugin, getPluginEntryDN, getPluginTypes, getServerContext, initializeInternal, invokeForInternalOperations, processIntermediateResponse, processSearchEntry, processSearchReference, processSubordinateDelete, processSubordinateModifyDN, setInvokeForInternalOperations
-
Constructor Details
-
PasswordPolicyImportPlugin
public PasswordPolicyImportPlugin()Creates a new instance of this Directory Server plugin. Every plugin must implement a default constructor (it is the only one that will be used to create plugins defined in the configuration), and every plugin constructor must callsuper()
as its first element.
-
-
Method Details
-
initializePlugin
public void initializePlugin(Set<PluginType> pluginTypes, PasswordPolicyImportPluginCfg configuration) throws ConfigException Description copied from class:DirectoryServerPlugin
Performs any initialization necessary for this plugin. This will be called as soon as the plugin has been loaded and before it is registered with the server.- Specified by:
initializePlugin
in classDirectoryServerPlugin<PasswordPolicyImportPluginCfg>
- Parameters:
pluginTypes
- The set of plugin types that indicate the ways in which this plugin will be invoked.configuration
- The configuration for this plugin.- Throws:
ConfigException
- If the provided entry does not contain a valid configuration for this plugin.
-
processImportBegin
Description copied from interface:ImportTaskListener
Performs any processing that might be necessary just before the server begins processing on an LDIF import task. This should include pausing interaction with the provided backend while the import is in progress.- Specified by:
processImportBegin
in interfaceImportTaskListener
- Parameters:
backend
- The backend to be imported.config
- Configuration information about the LDIF import to be performed.
-
processImportEnd
Description copied from interface:ImportTaskListener
Performs any processing that might be necessary after the server has completed processing on an LDIF import task. Note that this will always be called when import processing completes, regardless of whether it was successful.- Specified by:
processImportEnd
in interfaceImportTaskListener
- Parameters:
backend
- The backend that was imported.config
- Configuration information about the LDIF import that was performed.successful
- Indicates whether the import operation completed successfully.
-
doLDIFImport
Description copied from class:DirectoryServerPlugin
Performs any necessary processing that should be done during an LDIF import operation immediately after reading an entry and confirming that it should be imported based on the provided configuration.- Overrides:
doLDIFImport
in classDirectoryServerPlugin<PasswordPolicyImportPluginCfg>
- Parameters:
importConfig
- The configuration used for the LDIF import.entry
- The entry that has been read to the LDIF file.- Returns:
- The result of the plugin processing.
-
isConfigurationAcceptable
public boolean isConfigurationAcceptable(PasswordPolicyImportPluginCfg config, List<LocalizableMessage> unacceptableReasons) Description copied from class:DirectoryServerPlugin
Indicates whether the provided configuration is acceptable for this plugin. It should be possible to call this method on an uninitialized plugin instance in order to determine whether the plugin would be able to use the provided configuration.- Overrides:
isConfigurationAcceptable
in classDirectoryServerPlugin<PasswordPolicyImportPluginCfg>
- Parameters:
config
- 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.- Returns:
true
if the provided configuration is acceptable for this plugin, orfalse
if not.
-
isConfigurationChangeAcceptable
public boolean isConfigurationChangeAcceptable(PasswordPolicyImportPluginCfg configuration, List<LocalizableMessage> unacceptableReasons) Description copied from interface:ConfigurationChangeListener
Indicates whether the proposed change to the configuration is acceptable to this change listener.- Specified by:
isConfigurationChangeAcceptable
in interfaceConfigurationChangeListener<PasswordPolicyImportPluginCfg>
- Parameters:
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.- Returns:
- Returns
true
if the proposed change is acceptable, orfalse
if it is not.
-
applyConfigurationChange
Description copied from interface:ConfigurationChangeListener
Applies the configuration changes to this change listener.- Specified by:
applyConfigurationChange
in interfaceConfigurationChangeListener<PasswordPolicyImportPluginCfg>
- Parameters:
configuration
- The new configuration containing the changes.- Returns:
- Returns information about the result of changing the configuration.
-