Interface ReplicationServerCfg

  • All Superinterfaces:
    Configuration

    public interface ReplicationServerCfg
    extends Configuration
    A server-side interface for querying Replication Server settings.

    Replication Servers publish updates to Directory Servers within a Replication Domain.

    • Method Detail

      • configurationClass

        Class<? extends ReplicationServerCfg> configurationClass()
        Gets the configuration class associated with this Replication Server.
        Specified by:
        configurationClass in interface Configuration
        Returns:
        Returns the configuration class associated with this Replication Server.
      • addChangeListener

        void addChangeListener​(ConfigurationChangeListener<ReplicationServerCfg> listener)
        Register to be notified when this Replication Server is changed.
        Parameters:
        listener - The Replication Server configuration change listener.
      • removeChangeListener

        void removeChangeListener​(ConfigurationChangeListener<ReplicationServerCfg> listener)
        Deregister an existing Replication Server configuration change listener.
        Parameters:
        listener - The Replication Server configuration change listener.
      • getAdvertisedListenAddress

        SortedSet<com.forgerock.opendj.util.Host> getAdvertisedListenAddress()
        Gets the "advertised-listen-address" property.

        The advertised address(es) which clients should use for connecting to this Replication Server.

        Multiple addresses may be provided as separate values for this attribute. The meta-address 0.0.0.0 is not permitted.

        Default value is inherited from another property

        Returns:
        Returns an unmodifiable set containing the values of the "advertised-listen-address" property.
      • getAllowUpdatesPolicy

        ReplicationServerCfgDefn.AllowUpdatesPolicy getAllowUpdatesPolicy()
        Gets the "allow-updates-policy" property.

        Define how to allow servers to send updates to this replication server

        The replication server will only accept updates from servers allowed by the specified strategy. It will discard updates coming from servers which are not allowed, without processing them nor storing them in its changelog.

        Default value: all

        Returns:
        Returns the value of the "allow-updates-policy" property.
      • getAllowUpdatesServerFingerprints

        SortedSet<String> getAllowUpdatesServerFingerprints()
        Gets the "allow-updates-server-fingerprints" property.

        Lists the certificate fingerprints of servers allowed to send updates to this replication server.

        This property is only applicable when allow-updates-policy is set to verify-certificate-fingerprint. In that case, this replication server will only process updates coming from servers whose certificates have a fingerprint matching one of the specified values.

        Default value is undefined

        Returns:
        Returns an unmodifiable set containing the values of the "allow-updates-server-fingerprints" property.
      • 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".

        Default value is inherited from another property

        Returns:
        Returns an unmodifiable set containing the values of the "bootstrap-replication-server" property.
      • getChangelogEnabled

        ReplicationServerCfgDefn.ChangelogEnabled getChangelogEnabled()
        Gets the "changelog-enabled" property.

        Specifies whether the "cn=changelog" backend will be available to client applications.

        Default value: enabled

        Returns:
        Returns the value of the "changelog-enabled" property.
      • getChangelogEnabledExcludedDomains

        SortedSet<Dn> getChangelogEnabledExcludedDomains()
        Gets the "changelog-enabled-excluded-domains" property.

        Specifies the base DNs of domains to exclude from the change number indexer when changelog is enabled.

        Returns:
        Returns an unmodifiable set containing the values of the "changelog-enabled-excluded-domains" property.
      • getCipherKeyLength

        int getCipherKeyLength()
        Gets the "cipher-key-length" property.

        Specifies the key length in bits for the preferred cipher.

        Default value: 128

        Returns:
        Returns the value of the "cipher-key-length" property.
      • getCipherTransformation

        String getCipherTransformation()
        Gets the "cipher-transformation" property.

        Specifies the cipher for the directory server. The syntax is "algorithm/mode/padding".

        The full transformation is required: specifying only an algorithm and allowing the cipher provider to supply the default mode and padding is not supported, because there is no guarantee these default values are the same among different implementations. Some cipher algorithms, including RC4 and ARCFOUR, do not have a mode or padding, and hence must be specified using NONE for the mode field and NoPadding for the padding field. For example, RC4/NONE/NoPadding.

        Default value: AES/GCM/NoPadding

        Returns:
        Returns the value of the "cipher-transformation" property.
      • isConfidentialityEnabled

        boolean isConfidentialityEnabled()
        Gets the "confidentiality-enabled" property.

        Indicates whether the replication change-log should make records readable only by Directory Server. Throughput and disk space are affected by the more expensive operations taking place.

        Confidentiality is achieved by encrypting records on all domains managed by this replication server. Encrypting the records prevents unauthorized parties from accessing contents of LDAP operations. For complete protection, consider enabling secure communications between servers. Change number indexing is not affected by the setting.

        Default value: false

        Returns:
        Returns the value of the "confidentiality-enabled" property.
      • getDegradedStatusThreshold

        int getDegradedStatusThreshold()
        Gets the "degraded-status-threshold" property.

        The number of pending changes as threshold value for putting a directory server in degraded status.

        This value represents a number of pending changes a replication server has in queue for sending to a directory server. Once this value is crossed, the matching directory server goes in degraded status. When number of pending changes goes back under this value, the directory server is put back in normal status. 0 means status analyzer is disabled and directory servers are never put in degraded status.

        Default value: 5000

        Returns:
        Returns the value of the "degraded-status-threshold" property.
      • getDiskFullThreshold

        Long getDiskFullThreshold()
        Gets the "disk-full-threshold" property.

        The free disk space threshold at which point a warning alert notification will be triggered and the replication server will disconnect from the rest of the replication topology.

        When the available free space on the disk used by the replication changelog falls below the value specified, this replication server will stop. Connected Directory Servers will fail over to another RS. The replication server will restart again as soon as free space rises above the low threshold.

        Returns:
        Returns the value of the "disk-full-threshold" property.
      • getDiskLowThreshold

        Long getDiskLowThreshold()
        Gets the "disk-low-threshold" property.

        The free disk space threshold at which point a warning alert notification will be triggered.

        When the available free space on the disk used by the replication changelog falls below the value specified, a warning is sent and logged. Normal operation will continue but administrators are advised to take action to free some disk space.

        Returns:
        Returns the value of the "disk-low-threshold" property.
      • getGroupId

        String getGroupId()
        Gets the "group-id" property.

        Specifies the unique identifier of the group in which the directory server belongs.

        Directory servers are typically grouped according to their physical location, such as a rack or data center. Servers will prefer connecting to other servers within the same group.

        Default value is inherited from another property

        Returns:
        Returns the value of the "group-id" property.
      • getListenAddress

        SortedSet<com.forgerock.opendj.util.Host> getListenAddress()
        Gets the "listen-address" property.

        The network interface(s) on which this Replication Server should listen for incoming client connections.

        Multiple addresses may be provided as separate values for this attribute. If no values are provided, then the directory server will listen on all interfaces.

        Default value is inherited from another property

        Returns:
        Returns an unmodifiable set containing the values of the "listen-address" property.
      • getReplicationDbDirectory

        String getReplicationDbDirectory()
        Gets the "replication-db-directory" property.

        The path where the Replication Server stores all persistent information.

        Default value: changelogDb

        Returns:
        Returns the value of the "replication-db-directory" property.
      • getReplicationPort

        int getReplicationPort()
        Gets the "replication-port" property.

        The port on which this Replication Server waits for connections from other Replication Servers or Directory Servers.

        Returns:
        Returns the value of the "replication-port" property.
      • getReplicationPurgeDelay

        Long 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 is inherited from another property

        Returns:
        Returns the value of the "replication-purge-delay" property.
      • getSourceAddress

        com.forgerock.opendj.util.Host getSourceAddress()
        Gets the "source-address" property.

        If specified, the server will bind to the address before connecting to the remote server.

        The address must be one assigned to an existing network interface.

        Default value is inherited from another property

        Returns:
        Returns the value of the "source-address" property.
      • getWeight

        int getWeight()
        Gets the "weight" property.

        The weight of the replication server.

        The weight affected to the replication server. Each replication server of the topology has a weight. When combined together, the weights of the replication servers of a same group can be translated to a percentage that determines the quantity of directory servers of the topology that should be connected to a replication server. For instance imagine a topology with 3 replication servers (with the same group id) with the following weights: RS1=1, RS2=1, RS3=2. This means that RS1 should have 25% of the directory servers connected in the topology, RS2 25%, and RS3 50%. This may be useful if the replication servers of the topology have a different power and one wants to spread the load between the replication servers according to their power.

        Default value: 1

        Returns:
        Returns the value of the "weight" property.