Class ReplicationServerCfgDefn
- java.lang.Object
-
- org.forgerock.opendj.config.AbstractManagedObjectDefinition<C,S>
-
- org.forgerock.opendj.config.ManagedObjectDefinition<ReplicationServerCfgClient,ReplicationServerCfg>
-
- org.forgerock.opendj.server.config.meta.ReplicationServerCfgDefn
-
public final class ReplicationServerCfgDefn extends ManagedObjectDefinition<ReplicationServerCfgClient,ReplicationServerCfg>
An interface for querying the Replication Server managed object definition meta information.Replication Servers publish updates to Directory Servers within a Replication Domain.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ReplicationServerCfgDefn.AllowUpdatesPolicy
Defines the set of permissible values for the "allow-updates-policy" property.static class
ReplicationServerCfgDefn.ChangelogEnabled
Defines the set of permissible values for the "changelog-enabled" property.
-
Method Summary
-
Methods inherited from class org.forgerock.opendj.config.AbstractManagedObjectDefinition
getAggregationPropertyDefinition, getAggregationPropertyDefinitions, getAllAggregationPropertyDefinitions, getAllChildren, getAllConstraints, getAllPropertyDefinitions, getAllRelationDefinitions, getAllReverseAggregationPropertyDefinitions, getAllReverseRelationDefinitions, getAllTags, getChild, getChildren, getConstraints, getDeprecated, getDescription, getDescription, getName, getParent, getPropertyDefinition, getPropertyDefinitions, getRelationDefinition, getRelationDefinitions, getReverseAggregationPropertyDefinitions, getReverseRelationDefinitions, getSynopsis, getSynopsis, getUserFriendlyName, getUserFriendlyName, getUserFriendlyPluralName, getUserFriendlyPluralName, hasChildren, hasOption, hasTag, initialize, isChildOf, isParentOf, isTop, registerConstraint, registerDeprecated, registerOption, registerPropertyDefinition, registerRelationDefinition, registerTag, resolveManagedObjectDefinition, toString, toString
-
-
-
-
Method Detail
-
getInstance
public static ReplicationServerCfgDefn getInstance()
Get the Replication Server configuration definition singleton.- Returns:
- Returns the Replication Server configuration definition singleton.
-
createClientConfiguration
public ReplicationServerCfgClient createClientConfiguration(ManagedObject<? extends ReplicationServerCfgClient> impl)
Description copied from class:ManagedObjectDefinition
Creates a client configuration view of the provided managed object. Modifications made to the underlying managed object will be reflected in the client configuration view and vice versa.- Specified by:
createClientConfiguration
in classManagedObjectDefinition<ReplicationServerCfgClient,ReplicationServerCfg>
- Parameters:
impl
- The managed object.- Returns:
- Returns a client configuration view of the provided managed object.
-
createServerConfiguration
public ReplicationServerCfg createServerConfiguration(ServerManagedObject<? extends ReplicationServerCfg> impl)
Description copied from class:ManagedObjectDefinition
Creates a server configuration view of the provided server managed object.- Specified by:
createServerConfiguration
in classManagedObjectDefinition<ReplicationServerCfgClient,ReplicationServerCfg>
- Parameters:
impl
- The server managed object.- Returns:
- Returns a server configuration view of the provided server managed object.
-
getServerConfigurationClass
public Class<ReplicationServerCfg> getServerConfigurationClass()
Description copied from class:ManagedObjectDefinition
Gets the server configuration class instance associated with this managed object definition.- Specified by:
getServerConfigurationClass
in classManagedObjectDefinition<ReplicationServerCfgClient,ReplicationServerCfg>
- Returns:
- Returns the server configuration class instance associated with this managed object definition.
-
getAdvertisedListenAddressPropertyDefinition
public HostPropertyDefinition getAdvertisedListenAddressPropertyDefinition()
Get the "advertised-listen-address" property definition.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.
- Returns:
- Returns the "advertised-listen-address" property definition.
-
getAllowUpdatesPolicyPropertyDefinition
public EnumPropertyDefinition<ReplicationServerCfgDefn.AllowUpdatesPolicy> getAllowUpdatesPolicyPropertyDefinition()
Get the "allow-updates-policy" property definition.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.
- Returns:
- Returns the "allow-updates-policy" property definition.
-
getAllowUpdatesServerFingerprintsPropertyDefinition
public StringPropertyDefinition getAllowUpdatesServerFingerprintsPropertyDefinition()
Get the "allow-updates-server-fingerprints" property definition.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.
- Returns:
- Returns the "allow-updates-server-fingerprints" property definition.
-
getBootstrapReplicationServerPropertyDefinition
public HostPortPropertyDefinition getBootstrapReplicationServerPropertyDefinition()
Get the "bootstrap-replication-server" property definition.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 "bootstrap-replication-server" property definition.
-
getChangelogEnabledPropertyDefinition
public EnumPropertyDefinition<ReplicationServerCfgDefn.ChangelogEnabled> getChangelogEnabledPropertyDefinition()
Get the "changelog-enabled" property definition.Specifies whether the "cn=changelog" backend will be available to client applications.
- Returns:
- Returns the "changelog-enabled" property definition.
-
getChangelogEnabledExcludedDomainsPropertyDefinition
public DnPropertyDefinition getChangelogEnabledExcludedDomainsPropertyDefinition()
Get the "changelog-enabled-excluded-domains" property definition.Specifies the base DNs of domains to exclude from the change number indexing when changelog is enabled.
- Returns:
- Returns the "changelog-enabled-excluded-domains" property definition.
-
getCipherKeyLengthPropertyDefinition
public IntegerPropertyDefinition getCipherKeyLengthPropertyDefinition()
Get the "cipher-key-length" property definition.Specifies the key length in bits for the preferred cipher.
- Returns:
- Returns the "cipher-key-length" property definition.
-
getCipherTransformationPropertyDefinition
public StringPropertyDefinition getCipherTransformationPropertyDefinition()
Get the "cipher-transformation" property definition.Specifies the cipher for the directory server using the syntax 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 do not have a mode or padding, hence the fields must be specified using NONE as mode and NoPadding as padding. For example, ChaCha20/NONE/NoPadding.
- Returns:
- Returns the "cipher-transformation" property definition.
-
getConfidentialityEnabledPropertyDefinition
public BooleanPropertyDefinition getConfidentialityEnabledPropertyDefinition()
Get the "confidentiality-enabled" property definition.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.
- Returns:
- Returns the "confidentiality-enabled" property definition.
-
getDiskFullThresholdPropertyDefinition
public SizePropertyDefinition getDiskFullThresholdPropertyDefinition()
Get the "disk-full-threshold" property definition.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 "disk-full-threshold" property definition.
-
getDiskLowThresholdPropertyDefinition
public SizePropertyDefinition getDiskLowThresholdPropertyDefinition()
Get the "disk-low-threshold" property definition.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 "disk-low-threshold" property definition.
-
getGroupIdPropertyDefinition
public StringPropertyDefinition getGroupIdPropertyDefinition()
Get the "group-id" property definition.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.
- Returns:
- Returns the "group-id" property definition.
-
getHeartbeatIntervalPropertyDefinition
public DurationPropertyDefinition getHeartbeatIntervalPropertyDefinition()
Get the "heartbeat-interval" property definition.Specifies the heartbeat interval that the directory server will use when communicating with Replication Servers.
The directory server expects a regular heartbeat coming from the Replication Server within the specified interval. If a heartbeat is not received within the interval, the Directory Server closes its connection and connects to another Replication Server.
- Returns:
- Returns the "heartbeat-interval" property definition.
-
getListenAddressPropertyDefinition
public HostPropertyDefinition getListenAddressPropertyDefinition()
Get the "listen-address" property definition.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.
- Returns:
- Returns the "listen-address" property definition.
-
getReplicationDbDirectoryPropertyDefinition
public StringPropertyDefinition getReplicationDbDirectoryPropertyDefinition()
Get the "replication-db-directory" property definition.The path where the Replication Server stores all persistent information.
- Returns:
- Returns the "replication-db-directory" property definition.
-
getReplicationPortPropertyDefinition
public IntegerPropertyDefinition getReplicationPortPropertyDefinition()
Get the "replication-port" property definition.The port on which this Replication Server waits for connections from other Replication Servers or Directory Servers.
- Returns:
- Returns the "replication-port" property definition.
-
getReplicationPurgeDelayPropertyDefinition
public DurationPropertyDefinition getReplicationPurgeDelayPropertyDefinition()
Get the "replication-purge-delay" property definition.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.
- Returns:
- Returns the "replication-purge-delay" property definition.
-
getSourceAddressPropertyDefinition
public HostPropertyDefinition getSourceAddressPropertyDefinition()
Get the "source-address" property definition.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.
- Returns:
- Returns the "source-address" property definition.
-
getWeightPropertyDefinition
public IntegerPropertyDefinition getWeightPropertyDefinition()
Get the "weight" property definition.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.
- Returns:
- Returns the "weight" property definition.
-
-