Interface LeaderBasedReplicationSynchronizationProviderCfgClient

All Superinterfaces:
ConfigurationClient, SynchronizationProviderCfgClient

public interface LeaderBasedReplicationSynchronizationProviderCfgClient extends SynchronizationProviderCfgClient
A client-side interface for reading and modifying Leader Based Replication Synchronization Provider settings.

The Leader Based Replication Synchronization Provider provides leader based eventually consistent replication of data across multiple directory server instances.

  • Method Details

    • definition

      Get the configuration definition associated with this Leader Based Replication Synchronization Provider.
      Specified by:
      definition in interface ConfigurationClient
      Specified by:
      definition in interface SynchronizationProviderCfgClient
      Returns:
      Returns the configuration definition associated with this Leader Based Replication Synchronization Provider.
    • getBootstrapReplicationServer

      SortedSet<ValueOrExpression<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 the values of the "bootstrap-replication-server" property.
    • setBootstrapReplicationServer

      void setBootstrapReplicationServer(Collection<ValueOrExpression<com.forgerock.opendj.util.HostPort>> values) throws PropertyException
      Sets 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".

      Parameters:
      values - The values of the "bootstrap-replication-server" property.
      Throws:
      PropertyException - If one or more of the new values are invalid.
    • 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 interface SynchronizationProviderCfgClient
      Returns:
      Returns the value of the "java-class" property.
    • setJavaClass

      Sets the "java-class" property.

      Specifies the fully-qualified name of the Java class that provides the Leader Based Replication Synchronization Provider implementation.

      Specified by:
      setJavaClass in interface SynchronizationProviderCfgClient
      Parameters:
      value - The value of the "java-class" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getReplicationPurgeDelay

      ValueOrExpression<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.
    • setReplicationPurgeDelay

      void setReplicationPurgeDelay(ValueOrExpression<Duration> value) throws PropertyException
      Sets 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.

      Parameters:
      value - The value of the "replication-purge-delay" property.
      Throws:
      PropertyException - If the new value is invalid.
    • isSolveConflicts

      ValueOrExpression<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.
    • setSolveConflicts

      void setSolveConflicts(ValueOrExpression<Boolean> value) throws PropertyException
      Sets 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.

      Parameters:
      value - The value of the "solve-conflicts" property.
      Throws:
      PropertyException - If the new value is invalid.