Class ExternalChangelogDomain
- java.lang.Object
-
- org.opends.server.replication.plugin.ExternalChangelogDomain
-
- All Implemented Interfaces:
ConfigurationAddListener<ExternalChangelogDomainCfg>,ConfigurationChangeListener<ExternalChangelogDomainCfg>,ConfigurationDeleteListener<ExternalChangelogDomainCfg>
public class ExternalChangelogDomain extends Object implements ConfigurationAddListener<ExternalChangelogDomainCfg>, ConfigurationDeleteListener<ExternalChangelogDomainCfg>, ConfigurationChangeListener<ExternalChangelogDomainCfg>
This class specifies the external changelog feature for a replication domain.
-
-
Constructor Summary
Constructors Constructor Description ExternalChangelogDomain(LDAPReplicationDomain domain, ExternalChangelogDomainCfg configuration)Constructor from a provided LDAPReplicationDomain.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ConfigChangeResultapplyConfigurationAdd(ExternalChangelogDomainCfg configuration)Adds a new configuration to this add listener.ConfigChangeResultapplyConfigurationChange(ExternalChangelogDomainCfg configuration)Applies the configuration changes to this change listener.ConfigChangeResultapplyConfigurationDelete(ExternalChangelogDomainCfg configuration)Deletes an existing configuration from this delete listener.booleanisConfigurationAddAcceptable(ExternalChangelogDomainCfg configuration, List<org.forgerock.i18n.LocalizableMessage> unacceptableReasons)Indicates whether the proposed addition of a new configuration is acceptable to this add listener.booleanisConfigurationChangeAcceptable(ExternalChangelogDomainCfg configuration, List<org.forgerock.i18n.LocalizableMessage> unacceptableReasons)Indicates whether the proposed change to the configuration is acceptable to this change listener.booleanisConfigurationDeleteAcceptable(ExternalChangelogDomainCfg configuration, List<org.forgerock.i18n.LocalizableMessage> unacceptableReasons)Indicates whether the proposed deletion of an existing configuration is acceptable to this delete listener.
-
-
-
Constructor Detail
-
ExternalChangelogDomain
public ExternalChangelogDomain(LDAPReplicationDomain domain, ExternalChangelogDomainCfg configuration)
Constructor from a provided LDAPReplicationDomain.- Parameters:
domain- The provided domain.configuration- The external changelog configuration.
-
-
Method Detail
-
applyConfigurationAdd
public ConfigChangeResult applyConfigurationAdd(ExternalChangelogDomainCfg configuration)
Adds a new configuration to this add listener.- Specified by:
applyConfigurationAddin interfaceConfigurationAddListener<ExternalChangelogDomainCfg>- Parameters:
configuration- The configuration that will be added.- Returns:
- Returns information about the result of adding the configuration.
-
applyConfigurationChange
public ConfigChangeResult applyConfigurationChange(ExternalChangelogDomainCfg configuration)
Applies the configuration changes to this change listener.- Specified by:
applyConfigurationChangein interfaceConfigurationChangeListener<ExternalChangelogDomainCfg>- Parameters:
configuration- The new configuration containing the changes.- Returns:
- Returns information about the result of changing the configuration.
-
isConfigurationAddAcceptable
public boolean isConfigurationAddAcceptable(ExternalChangelogDomainCfg configuration, List<org.forgerock.i18n.LocalizableMessage> unacceptableReasons)
Indicates whether the proposed addition of a new configuration is acceptable to this add listener.- Specified by:
isConfigurationAddAcceptablein interfaceConfigurationAddListener<ExternalChangelogDomainCfg>- Parameters:
configuration- The configuration that will be added.unacceptableReasons- A list that can be used to hold messages about why the provided configuration is not acceptable.- Returns:
- Returns
trueif the proposed addition is acceptable, orfalseif it is not.
-
isConfigurationChangeAcceptable
public boolean isConfigurationChangeAcceptable(ExternalChangelogDomainCfg configuration, List<org.forgerock.i18n.LocalizableMessage> unacceptableReasons)
Indicates whether the proposed change to the configuration is acceptable to this change listener.Refused while a total update runs, as a change of the domain entry is: the attributes this entry carries are published as the session of the domain comes up, so applying them restarts that session, and an import into this replica reads its entries over it. Through the server configuration such a restart would wait for the listener thread the import runs on, which waits in turn for the lock of the configuration the change holds, to enable the backend back once the stream it was reading ends.
- Specified by:
isConfigurationChangeAcceptablein interfaceConfigurationChangeListener<ExternalChangelogDomainCfg>- 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
trueif the proposed change is acceptable, orfalseif it is not.
-
isConfigurationDeleteAcceptable
public boolean isConfigurationDeleteAcceptable(ExternalChangelogDomainCfg configuration, List<org.forgerock.i18n.LocalizableMessage> unacceptableReasons)
Indicates whether the proposed deletion of an existing configuration is acceptable to this delete listener.- Specified by:
isConfigurationDeleteAcceptablein interfaceConfigurationDeleteListener<ExternalChangelogDomainCfg>- Parameters:
configuration- The configuration that will be deleted.unacceptableReasons- A list that can be used to hold messages about why the provided configuration is not acceptable.- Returns:
- Returns
trueif the proposed deletion is acceptable, orfalseif it is not.
-
applyConfigurationDelete
public ConfigChangeResult applyConfigurationDelete(ExternalChangelogDomainCfg configuration)
Deletes an existing configuration from this delete listener.- Specified by:
applyConfigurationDeletein interfaceConfigurationDeleteListener<ExternalChangelogDomainCfg>- Parameters:
configuration- The existing configuration that will be deleted.- Returns:
- Returns information about the result of deleting the configuration.
-
-