Interface LeaderBasedReplicationSynchronizationProviderCfg
- All Superinterfaces:
Configuration
,SynchronizationProviderCfg
The Leader Based Replication Synchronization Provider provides leader based eventually consistent replication of data across multiple directory server instances.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addLeaderBasedReplicationChangeListener
(ConfigurationChangeListener<LeaderBasedReplicationSynchronizationProviderCfg> listener) Register to be notified when this Leader Based Replication Synchronization Provider is changed.void
addLeaderBasedReplicationDomainAddListener
(ConfigurationAddListener<LeaderBasedReplicationDomainCfg> listener) Registers to be notified when new Leader Based Replication Domains are added.void
addLeaderBasedReplicationDomainDeleteListener
(ConfigurationDeleteListener<LeaderBasedReplicationDomainCfg> listener) Registers to be notified when existing Leader Based Replication Domains are deleted.Gets the configuration class associated with this Leader Based Replication Synchronization Provider.SortedSet
<com.forgerock.opendj.util.HostPort> Gets the "bootstrap-replication-server" property.Gets the "java-class" property.Gets the named Leader Based Replication Domain.Gets the "replication-purge-delay" property.boolean
Gets the "solve-conflicts" property.String[]
Lists the Leader Based Replication Domains.void
removeLeaderBasedReplicationChangeListener
(ConfigurationChangeListener<LeaderBasedReplicationSynchronizationProviderCfg> listener) Deregister an existing Leader Based Replication Synchronization Provider configuration change listener.void
removeLeaderBasedReplicationDomainAddListener
(ConfigurationAddListener<LeaderBasedReplicationDomainCfg> listener) Deregisters an existing Leader Based Replication Domain configuration add listener.void
removeLeaderBasedReplicationDomainDeleteListener
(ConfigurationDeleteListener<LeaderBasedReplicationDomainCfg> listener) Deregisters an existing Leader Based Replication Domain configuration delete listener.Methods inherited from interface org.forgerock.opendj.config.Configuration
dn, name
Methods inherited from interface org.forgerock.opendj.server.config.server.SynchronizationProviderCfg
addChangeListener, isEnabled, removeChangeListener
-
Method Details
-
configurationClass
Class<? extends LeaderBasedReplicationSynchronizationProviderCfg> configurationClass()Gets the configuration class associated with this Leader Based Replication Synchronization Provider.- Specified by:
configurationClass
in interfaceConfiguration
- Specified by:
configurationClass
in interfaceSynchronizationProviderCfg
- Returns:
- Returns the configuration class associated with this Leader Based Replication Synchronization Provider.
-
addLeaderBasedReplicationChangeListener
void addLeaderBasedReplicationChangeListener(ConfigurationChangeListener<LeaderBasedReplicationSynchronizationProviderCfg> listener) Register to be notified when this Leader Based Replication Synchronization Provider is changed.- Parameters:
listener
- The Leader Based Replication Synchronization Provider configuration change listener.
-
removeLeaderBasedReplicationChangeListener
void removeLeaderBasedReplicationChangeListener(ConfigurationChangeListener<LeaderBasedReplicationSynchronizationProviderCfg> listener) Deregister an existing Leader Based Replication Synchronization Provider configuration change listener.- Parameters:
listener
- The Leader Based Replication Synchronization Provider configuration change listener.
-
getBootstrapReplicationServer
SortedSet<com.forgerock.opendj.util.HostPort> getBootstrapReplicationServer()Gets the "bootstrap-replication-server" property.The addresses of one or more replication servers within the topology which this server should connect to in order to discover the rest of the topology.
Addresses must be specified using the replication port of the remote replication servers using the syntax "hostname:repl-port". When using an IPv6 address as the hostname, put brackets around the address as in "[IPv6Address]:repl-port".
- Returns:
- Returns an unmodifiable set containing the values of the "bootstrap-replication-server" property.
-
getJavaClass
String getJavaClass()Gets the "java-class" property.Specifies the fully-qualified name of the Java class that provides the Leader Based Replication Synchronization Provider implementation.
Default value:
org.forgerock.opendj.server.leaderbasedreplication.LeaderBasedReplicationSynchronizationProvider;
- Specified by:
getJavaClass
in interfaceSynchronizationProviderCfg
- Returns:
- Returns the value of the "java-class" property.
-
getReplicationPurgeDelay
Duration getReplicationPurgeDelay()Gets the "replication-purge-delay" property.Minimum lifetime of changelog data and old replication meta-data in directory entries. Changelog data and replication meta-data older than this setting is eligible to be removed.
After the purge delay has passed, the server removes old changelog data over time when it applies new updates. Replication meta-data is stored in changed directory entries. The server removes old replication meta-data either when the entry is next modified, or by a dedicated purge task, whichever happens first. The server temporarily stops removing old data when it has been unable to process updates for an extended period of time. For example, the server stops removing data when the server is offline, and when it cannot access other servers due to a network partition. Once old data is removed, the server can no longer use it for replication. Changelog and replication meta-data older than the purge delay must therefore be considered stale. Backups must be newer than the purge delay, including the time it takes to restore a backup.
Default value:
3 days
- Returns:
- Returns the value of the "replication-purge-delay" property.
-
isSolveConflicts
boolean isSolveConflicts()Gets the "solve-conflicts" property.Indicates if this server solves conflict.
This boolean indicates if this domain keeps the historical meta-data necessary to solve conflicts. When set to false the server will not maintain historical meta-data and will therefore not be able to solve conflict. This should therefore be done only if the replication is used in a single master type of deployment.
Default value:
true
- Returns:
- Returns the value of the "solve-conflicts" property.
-
listLeaderBasedReplicationDomains
String[] listLeaderBasedReplicationDomains()Lists the Leader Based Replication Domains.- Returns:
- Returns an array containing the names of the Leader Based Replication Domains.
-
getLeaderBasedReplicationDomain
Gets the named Leader Based Replication Domain.- Parameters:
name
- The name of the Leader Based Replication Domain to retrieve.- Returns:
- Returns the named Leader Based Replication Domain.
- Throws:
ConfigException
- If the Leader Based Replication Domain could not be found or it could not be successfully decoded.
-
addLeaderBasedReplicationDomainAddListener
void addLeaderBasedReplicationDomainAddListener(ConfigurationAddListener<LeaderBasedReplicationDomainCfg> listener) throws ConfigException Registers to be notified when new Leader Based Replication Domains are added.- Parameters:
listener
- The Leader Based Replication Domain configuration add listener.- Throws:
ConfigException
- If the add listener could not be registered.
-
removeLeaderBasedReplicationDomainAddListener
void removeLeaderBasedReplicationDomainAddListener(ConfigurationAddListener<LeaderBasedReplicationDomainCfg> listener) Deregisters an existing Leader Based Replication Domain configuration add listener.- Parameters:
listener
- The Leader Based Replication Domain configuration add listener.
-
addLeaderBasedReplicationDomainDeleteListener
void addLeaderBasedReplicationDomainDeleteListener(ConfigurationDeleteListener<LeaderBasedReplicationDomainCfg> listener) throws ConfigException Registers to be notified when existing Leader Based Replication Domains are deleted.- Parameters:
listener
- The Leader Based Replication Domain configuration delete listener.- Throws:
ConfigException
- If the delete listener could not be registered.
-
removeLeaderBasedReplicationDomainDeleteListener
void removeLeaderBasedReplicationDomainDeleteListener(ConfigurationDeleteListener<LeaderBasedReplicationDomainCfg> listener) Deregisters an existing Leader Based Replication Domain configuration delete listener.- Parameters:
listener
- The Leader Based Replication Domain configuration delete listener.
-