public class MultimasterReplication extends SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg> implements org.forgerock.opendj.config.server.ConfigurationAddListener<org.forgerock.opendj.server.config.server.ReplicationDomainCfg>, org.forgerock.opendj.config.server.ConfigurationDeleteListener<org.forgerock.opendj.server.config.server.ReplicationDomainCfg>, org.forgerock.opendj.config.server.ConfigurationChangeListener<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>, BackupTaskListener, RestoreTaskListener, ImportTaskListener, ExportTaskListener
Constructor and Description |
---|
MultimasterReplication() |
Modifier and Type | Method and Description |
---|---|
org.forgerock.opendj.config.server.ConfigChangeResult |
applyConfigurationAdd(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration) |
org.forgerock.opendj.config.server.ConfigChangeResult |
applyConfigurationChange(org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg configuration) |
org.forgerock.opendj.config.server.ConfigChangeResult |
applyConfigurationDelete(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration) |
void |
completeSynchronizationProvider()
Performs any necessary final initialization processing for this
synchronization provider.
|
static LDAPReplicationDomain |
createNewDomain(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration)
Creates a new domain from its configEntry, do the
necessary initialization and starts it so that it is
fully operational when this method returns.
|
static void |
deleteDomain(org.forgerock.opendj.ldap.Dn dn)
Deletes a domain.
|
void |
doPostOperation(PostOperationAddOperation addOperation)
Performs any necessary synchronization processing that may be
needed after the provided add operation is performed.
|
void |
doPostOperation(PostOperationDeleteOperation deleteOperation)
Performs any necessary synchronization processing that may be
needed after the provided delete operation is performed.
|
void |
doPostOperation(PostOperationModifyDNOperation modifyDNOperation)
Performs any necessary synchronization processing that may be
needed after the provided modify DN operation is performed.
|
void |
doPostOperation(PostOperationModifyOperation modifyOperation)
Performs any necessary synchronization processing that may be
needed after the provided modify operation is performed.
|
SynchronizationProviderResult |
doPreOperation(PreOperationAddOperation addOperation)
Performs any necessary synchronization processing that may be
needed before the provided add operation is performed.
|
SynchronizationProviderResult |
doPreOperation(PreOperationDeleteOperation deleteOperation)
Performs any necessary synchronization processing that may be
needed before the provided delete operation is performed.
|
SynchronizationProviderResult |
doPreOperation(PreOperationModifyDNOperation modifyDNOperation)
Performs any necessary synchronization processing that may be
needed before the provided modify DN operation is performed.
|
SynchronizationProviderResult |
doPreOperation(PreOperationModifyOperation modifyOperation)
Performs any necessary synchronization processing that may be
needed before the provided modify operation is performed.
|
void |
finalizeSynchronizationProvider()
Performs any necessary finalization for this synchronization
provider.
|
static LDAPReplicationDomain |
findDomain(org.forgerock.opendj.ldap.Dn dn,
PluginOperation pluginOp)
Finds the domain for a given DN.
|
static int |
getConnectionTimeoutMS()
Returns the connection timeout in milli-seconds.
|
static Set<org.forgerock.opendj.ldap.Dn> |
getExcludedChangelogDomains()
Gets the Set of domain baseDN which are disabled for the external changelog.
|
static int |
getNumberOfDomains()
Gets the number of handled domain objects.
|
ReplicationServerListener |
getReplicationServerListener()
Returns the replication server listener associated to that Multimaster
Replication.
|
SynchronizationProviderResult |
handleConflictResolution(PreOperationAddOperation addOperation)
Performs any necessary synchronization processing for the
operation that may be needed early on to deal with any potential
conflict resolution or updates to historical data.
|
SynchronizationProviderResult |
handleConflictResolution(PreOperationDeleteOperation deleteOperation)
Performs any necessary synchronization processing for the
operation that may be needed early on to deal with any potential
conflict resolution or updates to historical data.
|
SynchronizationProviderResult |
handleConflictResolution(PreOperationModifyDNOperation modifyDNOperation)
Performs any necessary synchronization processing for the
operation that may be needed early on to deal with any potential
conflict resolution or updates to historical data.
|
SynchronizationProviderResult |
handleConflictResolution(PreOperationModifyOperation modifyOperation)
Performs any necessary synchronization processing for the
operation that may be needed early on to deal with any potential
conflict resolution or updates to historical data.
|
void |
initializeSynchronizationProvider(ServerContext serverContext,
org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg cfg)
Performs any initialization that might be necessary for this
synchronization provider.
|
boolean |
isConfigurationAddAcceptable(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration,
List<LocalizableMessage> unacceptableReasons) |
boolean |
isConfigurationChangeAcceptable(org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg configuration,
List<LocalizableMessage> unacceptableReasons) |
boolean |
isConfigurationDeleteAcceptable(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration,
List<LocalizableMessage> unacceptableReasons) |
static boolean |
isECLEnabled()
Returns whether the external change-log contains data from at least a domain.
|
static boolean |
isECLEnabledDomain(org.forgerock.opendj.ldap.Dn baseDN)
Returns whether the provided baseDN represents a replication domain enabled
for the external changelog.
|
void |
processBackupBegin(LocalBackend<?> backend,
BackupConfig config)
Performs any processing that might be necessary just before the
server begins processing on a backup task.
|
void |
processBackupEnd(LocalBackend<?> backend,
BackupConfig config,
boolean successful)
Performs any processing that might be necessary after the server
has completed processing on a backup task.
|
void |
processExportBegin(LocalBackend<?> backend,
LDIFExportConfig config)
Performs any processing that might be necessary just before the
server begins processing on an LDIF export task.
|
void |
processExportEnd(LocalBackend<?> backend,
LDIFExportConfig config,
boolean successful)
Performs any processing that might be necessary after the server
has completed processing on an LDIF export task.
|
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.
|
void |
processRestoreBegin(LocalBackend<?> backend,
RestoreConfig config)
Performs any processing that might be necessary just before the
server begins processing on a restore task.
|
void |
processRestoreEnd(LocalBackend<?> backend,
RestoreConfig config,
boolean successful)
Performs any processing that might be necessary after the server
has completed processing on a restore task.
|
void |
processSchemaChange(List<Modification> modifications)
This method is called whenever the server detects a modification
of the schema done by directly modifying the backing files
of the schema backend.
|
isConfigurationAcceptable
public MultimasterReplication()
public static LDAPReplicationDomain findDomain(org.forgerock.opendj.ldap.Dn dn, PluginOperation pluginOp)
dn
- The DN for which the domain must be returned.pluginOp
- An optional operation for which the check is done.
Can be null is the request has no associated operation.public static LDAPReplicationDomain createNewDomain(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration) throws org.forgerock.opendj.config.server.ConfigException
configuration
- The entry with the configuration of this domain.org.forgerock.opendj.config.server.ConfigException
- When the configuration is not valid.public static void deleteDomain(org.forgerock.opendj.ldap.Dn dn)
dn
- : the base DN of the domain to delete.public void initializeSynchronizationProvider(ServerContext serverContext, org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg cfg) throws org.forgerock.opendj.config.server.ConfigException
SynchronizationProvider
initializeSynchronizationProvider
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
serverContext
- The server context.cfg
- The configuration information for this
synchronization provider.org.forgerock.opendj.config.server.ConfigException
- If the provided entry does not contain
a valid configuration for this
synchronization provider.public boolean isConfigurationAddAcceptable(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration, List<LocalizableMessage> unacceptableReasons)
isConfigurationAddAcceptable
in interface org.forgerock.opendj.config.server.ConfigurationAddListener<org.forgerock.opendj.server.config.server.ReplicationDomainCfg>
public org.forgerock.opendj.config.server.ConfigChangeResult applyConfigurationAdd(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration)
applyConfigurationAdd
in interface org.forgerock.opendj.config.server.ConfigurationAddListener<org.forgerock.opendj.server.config.server.ReplicationDomainCfg>
public void doPostOperation(PostOperationAddOperation addOperation)
SynchronizationProvider
doPostOperation
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
addOperation
- The add operation to be processed.public void doPostOperation(PostOperationDeleteOperation deleteOperation)
SynchronizationProvider
doPostOperation
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
deleteOperation
- The delete operation to be processed.public void doPostOperation(PostOperationModifyDNOperation modifyDNOperation)
SynchronizationProvider
doPostOperation
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
modifyDNOperation
- The modify DN operation to be
processed.public void doPostOperation(PostOperationModifyOperation modifyOperation)
SynchronizationProvider
doPostOperation
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
modifyOperation
- The modify operation to be processed.public SynchronizationProviderResult handleConflictResolution(PreOperationModifyOperation modifyOperation)
SynchronizationProvider
handleConflictResolution
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
modifyOperation
- The modify operation to be processed.public SynchronizationProviderResult handleConflictResolution(PreOperationAddOperation addOperation) throws DirectoryException
SynchronizationProvider
handleConflictResolution
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
addOperation
- The add operation to be processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult handleConflictResolution(PreOperationDeleteOperation deleteOperation) throws DirectoryException
SynchronizationProvider
handleConflictResolution
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
deleteOperation
- The delete operation to be processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult handleConflictResolution(PreOperationModifyDNOperation modifyDNOperation) throws DirectoryException
SynchronizationProvider
handleConflictResolution
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
modifyDNOperation
- The modify DN operation to be
processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult doPreOperation(PreOperationModifyOperation modifyOperation)
SynchronizationProvider
doPreOperation
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
modifyOperation
- The modify operation to be processed.public SynchronizationProviderResult doPreOperation(PreOperationDeleteOperation deleteOperation) throws DirectoryException
SynchronizationProvider
doPreOperation
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
deleteOperation
- The delete operation to be processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult doPreOperation(PreOperationModifyDNOperation modifyDNOperation) throws DirectoryException
SynchronizationProvider
doPreOperation
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
modifyDNOperation
- The modify DN operation to be
processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult doPreOperation(PreOperationAddOperation addOperation)
SynchronizationProvider
doPreOperation
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
addOperation
- The add operation to be processed.public void finalizeSynchronizationProvider()
SynchronizationProvider
finalizeSynchronizationProvider
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
public void processSchemaChange(List<Modification> modifications)
processSchemaChange
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
modifications
- The list of modifications that was
applied to the schema.public void processBackupBegin(LocalBackend<?> backend, BackupConfig config)
BackupTaskListener
processBackupBegin
in interface BackupTaskListener
backend
- The backend to be archived.config
- Configuration information about the backup to be
performed.public void processBackupEnd(LocalBackend<?> backend, BackupConfig config, boolean successful)
BackupTaskListener
processBackupEnd
in interface BackupTaskListener
backend
- The backend that was archived.config
- Configuration information about the backup
that was performed.successful
- Indicates whether the backup operation
completed successfully.public void processRestoreBegin(LocalBackend<?> backend, RestoreConfig config)
RestoreTaskListener
processRestoreBegin
in interface RestoreTaskListener
backend
- The backend to be restored.config
- Configuration information about the restore to
be performed.public void processRestoreEnd(LocalBackend<?> backend, RestoreConfig config, boolean successful)
RestoreTaskListener
processRestoreEnd
in interface RestoreTaskListener
backend
- The backend that was restored.config
- Configuration information about the restore
that was performed.successful
- Indicates whether the restore operation
completed successfully.public void processImportBegin(LocalBackend<?> backend, LDIFImportConfig config)
ImportTaskListener
processImportBegin
in interface ImportTaskListener
backend
- The backend to be imported.config
- Configuration information about the LDIF import
to be performed.public void processImportEnd(LocalBackend<?> backend, LDIFImportConfig config, boolean successful)
ImportTaskListener
processImportEnd
in interface ImportTaskListener
backend
- The backend that was imported.config
- Configuration information about the LDIF
import that was performed.successful
- Indicates whether the import operation
completed successfully.public void processExportBegin(LocalBackend<?> backend, LDIFExportConfig config)
ExportTaskListener
processExportBegin
in interface ExportTaskListener
backend
- The backend to be exported.config
- Configuration information about the LDIF export
to be performed.public void processExportEnd(LocalBackend<?> backend, LDIFExportConfig config, boolean successful)
ExportTaskListener
processExportEnd
in interface ExportTaskListener
backend
- The backend that was exported.config
- Configuration information about the LDIF
export that was performed.successful
- Indicates whether the export operation
completed successfully.public org.forgerock.opendj.config.server.ConfigChangeResult applyConfigurationDelete(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration)
applyConfigurationDelete
in interface org.forgerock.opendj.config.server.ConfigurationDeleteListener<org.forgerock.opendj.server.config.server.ReplicationDomainCfg>
public boolean isConfigurationDeleteAcceptable(org.forgerock.opendj.server.config.server.ReplicationDomainCfg configuration, List<LocalizableMessage> unacceptableReasons)
isConfigurationDeleteAcceptable
in interface org.forgerock.opendj.config.server.ConfigurationDeleteListener<org.forgerock.opendj.server.config.server.ReplicationDomainCfg>
public ReplicationServerListener getReplicationServerListener()
public boolean isConfigurationChangeAcceptable(org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg configuration, List<LocalizableMessage> unacceptableReasons)
isConfigurationChangeAcceptable
in interface org.forgerock.opendj.config.server.ConfigurationChangeListener<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
public org.forgerock.opendj.config.server.ConfigChangeResult applyConfigurationChange(org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg configuration)
applyConfigurationChange
in interface org.forgerock.opendj.config.server.ConfigurationChangeListener<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
public void completeSynchronizationProvider()
SynchronizationProvider
completeSynchronizationProvider
in class SynchronizationProvider<org.forgerock.opendj.server.config.server.ReplicationSynchronizationProviderCfg>
public static int getNumberOfDomains()
public static Set<org.forgerock.opendj.ldap.Dn> getExcludedChangelogDomains() throws DirectoryException
DirectoryException
- if a problem occurspublic static boolean isECLEnabledDomain(org.forgerock.opendj.ldap.Dn baseDN)
baseDN
- the replication domain to checkpublic static boolean isECLEnabled()
public static int getConnectionTimeoutMS()
Copyright © 2010-2017 ForgeRock AS. All Rights Reserved.