public class MultimasterReplication extends SynchronizationProvider<ReplicationSynchronizationProviderCfg> implements ConfigurationAddListener<ReplicationDomainCfg>, ConfigurationDeleteListener<ReplicationDomainCfg>, ConfigurationChangeListener<ReplicationSynchronizationProviderCfg>, BackupTaskListener, RestoreTaskListener, ImportTaskListener, ExportTaskListener
Constructor and Description |
---|
MultimasterReplication() |
Modifier and Type | Method and Description |
---|---|
org.forgerock.opendj.config.server.ConfigChangeResult |
applyConfigurationAdd(ReplicationDomainCfg configuration)
Adds a new configuration to this add listener.
|
org.forgerock.opendj.config.server.ConfigChangeResult |
applyConfigurationChange(ReplicationSynchronizationProviderCfg configuration)
Applies the configuration changes to this change listener.
|
org.forgerock.opendj.config.server.ConfigChangeResult |
applyConfigurationDelete(ReplicationDomainCfg configuration)
Deletes an existing configuration from this delete listener.
|
void |
completeSynchronizationProvider()
Performs any necessary final initialization processing for this
synchronization provider.
|
static LDAPReplicationDomain |
createNewDomain(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(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(DN dn,
PluginOperation pluginOp)
Finds the domain for a given DN.
|
static int |
getConnectionTimeoutMS()
Returns the connection timeout in milli-seconds.
|
static Set<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(ReplicationSynchronizationProviderCfg cfg)
Performs any initialization that might be necessary for this
synchronization provider.
|
boolean |
isConfigurationAddAcceptable(ReplicationDomainCfg configuration,
List<LocalizableMessage> unacceptableReasons)
Indicates whether the proposed addition of a new configuration is
acceptable to this add listener.
|
boolean |
isConfigurationChangeAcceptable(ReplicationSynchronizationProviderCfg configuration,
List<LocalizableMessage> unacceptableReasons)
Indicates whether the proposed change to the configuration is
acceptable to this change listener.
|
boolean |
isConfigurationDeleteAcceptable(ReplicationDomainCfg configuration,
List<LocalizableMessage> unacceptableReasons)
Indicates whether the proposed deletion of an existing
configuration is acceptable to this delete listener.
|
static boolean |
isECLEnabled()
Returns whether the external change-log contains data from at least a domain.
|
static boolean |
isECLEnabledDomain(DN baseDN)
Returns whether the provided baseDN represents a replication domain enabled
for the external changelog.
|
void |
processBackupBegin(Backend backend,
BackupConfig config)
Performs any processing that might be necessary just before the
server begins processing on a backup task.
|
void |
processBackupEnd(Backend backend,
BackupConfig config,
boolean successful)
Performs any processing that might be necessary after the server
has completed processing on a backup task.
|
void |
processExportBegin(Backend backend,
LDIFExportConfig config)
Performs any processing that might be necessary just before the
server begins processing on an LDIF export task.
|
void |
processExportEnd(Backend 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(Backend backend,
LDIFImportConfig config)
Performs any processing that might be necessary just before the
server begins processing on an LDIF import task.
|
void |
processImportEnd(Backend 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(Backend backend,
RestoreConfig config)
Performs any processing that might be necessary just before the
server begins processing on a restore task.
|
void |
processRestoreEnd(Backend 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(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(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(DN dn)
dn
- : the base DN of the domain to delete.public void initializeSynchronizationProvider(ReplicationSynchronizationProviderCfg cfg) throws org.forgerock.opendj.config.server.ConfigException
initializeSynchronizationProvider
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
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(ReplicationDomainCfg configuration, List<LocalizableMessage> unacceptableReasons)
isConfigurationAddAcceptable
in interface ConfigurationAddListener<ReplicationDomainCfg>
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.true
if the proposed addition is
acceptable, or false
if it is not.public org.forgerock.opendj.config.server.ConfigChangeResult applyConfigurationAdd(ReplicationDomainCfg configuration)
applyConfigurationAdd
in interface ConfigurationAddListener<ReplicationDomainCfg>
configuration
- The configuration that will be added.public void doPostOperation(PostOperationAddOperation addOperation)
doPostOperation
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
addOperation
- The add operation to be processed.public void doPostOperation(PostOperationDeleteOperation deleteOperation)
doPostOperation
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
deleteOperation
- The delete operation to be processed.public void doPostOperation(PostOperationModifyDNOperation modifyDNOperation)
doPostOperation
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
modifyDNOperation
- The modify DN operation to be
processed.public void doPostOperation(PostOperationModifyOperation modifyOperation)
doPostOperation
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
modifyOperation
- The modify operation to be processed.public SynchronizationProviderResult handleConflictResolution(PreOperationModifyOperation modifyOperation)
handleConflictResolution
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
modifyOperation
- The modify operation to be processed.public SynchronizationProviderResult handleConflictResolution(PreOperationAddOperation addOperation) throws DirectoryException
handleConflictResolution
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
addOperation
- The add operation to be processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult handleConflictResolution(PreOperationDeleteOperation deleteOperation) throws DirectoryException
handleConflictResolution
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
deleteOperation
- The delete operation to be processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult handleConflictResolution(PreOperationModifyDNOperation modifyDNOperation) throws DirectoryException
handleConflictResolution
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
modifyDNOperation
- The modify DN operation to be
processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult doPreOperation(PreOperationModifyOperation modifyOperation)
doPreOperation
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
modifyOperation
- The modify operation to be processed.public SynchronizationProviderResult doPreOperation(PreOperationDeleteOperation deleteOperation) throws DirectoryException
doPreOperation
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
deleteOperation
- The delete operation to be processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult doPreOperation(PreOperationModifyDNOperation modifyDNOperation) throws DirectoryException
doPreOperation
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
modifyDNOperation
- The modify DN operation to be
processed.DirectoryException
- If a problem occurs during
synchronization processing.public SynchronizationProviderResult doPreOperation(PreOperationAddOperation addOperation)
doPreOperation
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
addOperation
- The add operation to be processed.public void finalizeSynchronizationProvider()
finalizeSynchronizationProvider
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
public void processSchemaChange(List<Modification> modifications)
processSchemaChange
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
modifications
- The list of modifications that was
applied to the schema.public void processBackupBegin(Backend backend, BackupConfig config)
processBackupBegin
in interface BackupTaskListener
backend
- The backend to be archived.config
- Configuration information about the backup to be
performed.public void processBackupEnd(Backend backend, BackupConfig config, boolean successful)
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(Backend backend, RestoreConfig config)
processRestoreBegin
in interface RestoreTaskListener
backend
- The backend to be restored.config
- Configuration information about the restore to
be performed.public void processRestoreEnd(Backend backend, RestoreConfig config, boolean successful)
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(Backend backend, LDIFImportConfig config)
processImportBegin
in interface ImportTaskListener
backend
- The backend to be imported.config
- Configuration information about the LDIF import
to be performed.public void processImportEnd(Backend backend, LDIFImportConfig config, boolean successful)
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(Backend backend, LDIFExportConfig config)
processExportBegin
in interface ExportTaskListener
backend
- The backend to be exported.config
- Configuration information about the LDIF export
to be performed.public void processExportEnd(Backend backend, LDIFExportConfig config, boolean successful)
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(ReplicationDomainCfg configuration)
applyConfigurationDelete
in interface ConfigurationDeleteListener<ReplicationDomainCfg>
configuration
- The existing configuration that will be deleted.public boolean isConfigurationDeleteAcceptable(ReplicationDomainCfg configuration, List<LocalizableMessage> unacceptableReasons)
isConfigurationDeleteAcceptable
in interface ConfigurationDeleteListener<ReplicationDomainCfg>
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.true
if the proposed deletion is
acceptable, or false
if it is not.public ReplicationServerListener getReplicationServerListener()
public boolean isConfigurationChangeAcceptable(ReplicationSynchronizationProviderCfg configuration, List<LocalizableMessage> unacceptableReasons)
isConfigurationChangeAcceptable
in interface ConfigurationChangeListener<ReplicationSynchronizationProviderCfg>
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 org.forgerock.opendj.config.server.ConfigChangeResult applyConfigurationChange(ReplicationSynchronizationProviderCfg configuration)
ConfigurationChangeListener
applyConfigurationChange
in interface ConfigurationChangeListener<ReplicationSynchronizationProviderCfg>
configuration
- The new configuration containing the changes.public void completeSynchronizationProvider()
completeSynchronizationProvider
in class SynchronizationProvider<ReplicationSynchronizationProviderCfg>
public static int getNumberOfDomains()
public static Set<DN> getExcludedChangelogDomains() throws DirectoryException
DirectoryException
- if a problem occurspublic static boolean isECLEnabledDomain(DN baseDN)
baseDN
- the replication domain to checkpublic static boolean isECLEnabled()
public static int getConnectionTimeoutMS()
Copyright © 2010-2016 ForgeRock AS. All Rights Reserved.