Package io.scalecube.cluster
Class ClusterConfig
java.lang.Object
io.scalecube.cluster.ClusterConfig
- All Implemented Interfaces:
Cloneable
Cluster configuration encapsulate settings needed cluster to create and successfully join.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()static ClusterConfigstatic ClusterConfigCreatesClusterConfigwith default settings for cluster on LAN network.static ClusterConfigCreatesMembershipConfigwith default settings for cluster on local loopback interface.static ClusterConfigCreatesClusterConfigwith default settings for cluster on WAN network.Returns externalHost.externalHost(String externalHost) Setter for externalHost.Returns externalPort.externalPort(Integer externalPort) Setter for externalPort.AppliesFailureDetectorConfigsettings.AppliesGossipConfigsettings.Returns memberAlias.memberAlias(String memberAlias) Setter for memberAlias.memberId()Returns ID to use for the local member.Sets ID to use for the local member.AppliesMembershipConfigsettings.<T> Tmetadata()Setter for metadata.metadataCodec(MetadataCodec metadataCodec) Setter for metadataCodec.intmetadataTimeout(int metadataTimeout) Setter for metadataTimeout.toString()AppliesTransportConfigsettings.
-
Field Details
-
DEFAULT_METADATA_TIMEOUT
public static final int DEFAULT_METADATA_TIMEOUT- See Also:
-
DEFAULT_WAN_METADATA_TIMEOUT
public static final int DEFAULT_WAN_METADATA_TIMEOUT- See Also:
-
DEFAULT_LOCAL_METADATA_TIMEOUT
public static final int DEFAULT_LOCAL_METADATA_TIMEOUT- See Also:
-
-
Constructor Details
-
ClusterConfig
public ClusterConfig()
-
-
Method Details
-
defaultConfig
-
defaultLanConfig
CreatesClusterConfigwith default settings for cluster on LAN network.- Returns:
- new
ClusterConfig
-
defaultWanConfig
CreatesClusterConfigwith default settings for cluster on WAN network.- Returns:
- new
ClusterConfig
-
defaultLocalConfig
CreatesMembershipConfigwith default settings for cluster on local loopback interface.- Returns:
- new
MembershipConfig
-
metadata
public <T> T metadata() -
metadata
Setter for metadata.- Parameters:
metadata- metadata- Returns:
- new
ClusterConfiginstance
-
metadataTimeout
public int metadataTimeout() -
metadataTimeout
Setter for metadataTimeout.- Parameters:
metadataTimeout- metadata timeout- Returns:
- new
ClusterConfiginstance
-
metadataCodec
-
metadataCodec
Setter for metadataCodec.- Parameters:
metadataCodec- metadata codec- Returns:
- new
ClusterConfiginstance
-
externalHost
Returns externalHost.externalHostis a config property for container environments, it's being set for advertising to scalecube cluster some connectable hostname which maps to scalecube transport's hostname on which scalecube transport is listening.- Returns:
- external host
-
externalHost
Setter for externalHost.externalHostis a config property for container environments, it's being set for advertising to scalecube cluster some connectable hostname which maps to scalecube transport's hostname on which scalecube transport is listening.- Parameters:
externalHost- external host- Returns:
- new
ClusterConfiginstance
-
memberId
Returns ID to use for the local member. Ifnull, the ID will be generated automatically.- Returns:
- local member ID.
-
memberId
Sets ID to use for the local member. Ifnull, the ID will be generated automatically.- Parameters:
memberId- local member ID- Returns:
- new
ClusterConfiginstance
-
memberAlias
Returns memberAlias.memberAliasis a config property which facilitatesMember.toString().- Returns:
- member alias.
-
memberAlias
Setter for memberAlias.memberAliasis a config property which facilitatesMember.toString().- Parameters:
memberAlias- member alias- Returns:
- new
ClusterConfiginstance
-
externalPort
Returns externalPort.externalPortis a config property for container environments, it's being set for advertising to scalecube cluster a port which mapped to scalecube transport's listening port.- Returns:
- external port
-
externalPort
Setter for externalPort.externalPortis a config property for container environments, it's being set for advertising to scalecube cluster a port which mapped to scalecube transport's listening port.- Parameters:
externalPort- external port- Returns:
- new
ClusterConfiginstance
-
transport
AppliesTransportConfigsettings.- Parameters:
op- operator to applyTransportConfigsettings- Returns:
- new
ClusterConfiginstance
-
transportConfig
-
failureDetector
AppliesFailureDetectorConfigsettings.- Parameters:
op- operator to applyFailureDetectorConfigsettings- Returns:
- new
ClusterConfiginstance
-
failureDetectorConfig
-
gossip
AppliesGossipConfigsettings.- Parameters:
op- operator to applyGossipConfigsettings- Returns:
- new
ClusterConfiginstance
-
gossipConfig
-
membership
AppliesMembershipConfigsettings.- Parameters:
op- operator to applyMembershipConfigsettings- Returns:
- new
ClusterConfiginstance
-
membershipConfig
-
clone
-
toString
-