@Beta public class AdvancedNetworkConfig extends Object
NetworkConfig with the additional ability to define multiple
endpoints, each with its own separate protocol/security and/or socket properties.
When AdvancedNetworkConfig is present and enabled then it always takes precedence over
the NetworkingConfig.| Modifier and Type | Class and Description |
|---|---|
static class |
AdvancedNetworkConfig.MemberNetworkingView
Member endpoint decorated as a
NetworkConfig
Facade used during bootstrap to hide if-logic between the two networking configuration approaches |
| Constructor and Description |
|---|
AdvancedNetworkConfig() |
public MemberAddressProviderConfig getMemberAddressProviderConfig()
public AdvancedNetworkConfig setMemberAddressProviderConfig(MemberAddressProviderConfig memberAddressProviderConfig)
public AdvancedNetworkConfig addWanEndpointConfig(EndpointConfig endpointConfig)
EndpointConfig to the endpoints configuration. When the argument is an
EndpointConfig, then it configures network settings for the client side of outgoing network
connections opened from that member. When the provided endpointconfig is a
ServerSocketEndpointConfig, then the HazelcastInstance will additionally listen on
the configured port for incoming WAN connections.
Example of how to configure Hazelcast instances for active-passive WAN replication:
Config config = new Config();
ServerSocketEndpointConfig wanServerSocketConfig = new ServerSocketEndpointConfig().setPort(8765);
// setup SSL config etc
wanServerSocketConfig.getSSLConfig()
.setEnabled(true)
.setFactoryImplementation(new OpenSSLEngineFactory());
config.getAdvancedNetworkConfig()
.setEnabled(true)
.addWanEndpointConfig(wanServerSocketConfig);
HazelcastInstance passive = Hazelcast.newHazelcastInstance(config);
Config config = new Config();
EndpointConfig wanEndpointConfig = new EndpointConfig().setName("wan-tokyo");
wanEndpointConfig.getSSLConfig()
.setEnabled(true)
.setFactoryImplementation(new OpenSSLEngineFactory());
config.getAdvancedNetworkConfig()
.setEnabled(true)
.addWanEndpointConfig(wanEndpointConfig);
// setup WAN replication
WanReplicationConfig wanReplicationConfig = new WanReplicationConfig();
// WAN publisher config references endpoint config by name
WanPublisherConfig publisherConfig = new WanPublisherConfig().setEndpoint("wan-tokyo");
publisherConfig.getProperties().put("endpoints", "tokyo.hazelcast.com:8765");
wanReplicationConfig.addWanPublisherConfig(publisherConfig);
config.addWanReplicationConfig(wanReplicationConfig);
HazelcastInstance active = Hazelcast.newHazelcastInstance(config);
endpointConfig - the endpoint configuration to addpublic AdvancedNetworkConfig setMemberEndpointConfig(ServerSocketEndpointConfig serverSocketEndpointConfig)
MEMBER protocol. If another
ServerSocketEndpointConfig was previously set, it will be replaced. When starting a Hazelcast
instance with AdvancedNetworkConfig enabled, its configuration must include
one ServerSocketEndpointConfig for protocol type MEMBER.serverSocketEndpointConfig - the server socket endpoint configurationpublic AdvancedNetworkConfig setClientEndpointConfig(ServerSocketEndpointConfig serverSocketEndpointConfig)
CLIENT protocol. If another
ServerSocketEndpointConfig was previously set, it will be replaced. When starting a Hazelcast
instance with AdvancedNetworkConfig enabled, its configuration may include
at most one ServerSocketEndpointConfig for protocol type CLIENT.serverSocketEndpointConfig - the server socket endpoint configurationpublic AdvancedNetworkConfig setRestEndpointConfig(RestServerEndpointConfig restServerEndpointConfig)
REST protocol. If another
ServerSocketEndpointConfig was previously set, it will be replaced. When starting a Hazelcast
instance with AdvancedNetworkConfig enabled, its configuration may include
at most one ServerSocketEndpointConfig for protocol type REST.restServerEndpointConfig - the server socket endpoint configurationpublic AdvancedNetworkConfig setMemcacheEndpointConfig(ServerSocketEndpointConfig memcacheEndpointConfig)
memcache protocol. If another
ServerSocketEndpointConfig was previously set, it will be replaced.memcacheEndpointConfig - the server socket endpoint configurationpublic Map<EndpointQualifier,EndpointConfig> getEndpointConfigs()
public AdvancedNetworkConfig setEndpointConfigs(Map<EndpointQualifier,EndpointConfig> endpointConfigs)
public boolean isEnabled()
public AdvancedNetworkConfig setEnabled(boolean enabled)
public JoinConfig getJoin()
JoinConfig.public AdvancedNetworkConfig setJoin(JoinConfig join)
join - the join to setpublic AdvancedNetworkConfig setIcmpFailureDetectorConfig(IcmpFailureDetectorConfig icmpFailureDetectorConfig)
IcmpFailureDetectorConfig. The value can be null if this detector isn't needed.icmpFailureDetectorConfig - the IcmpFailureDetectorConfig to setgetIcmpFailureDetectorConfig()public IcmpFailureDetectorConfig getIcmpFailureDetectorConfig()
IcmpFailureDetectorConfig. It is possible that null is returned if no
IcmpFailureDetectorConfig has been set.setIcmpFailureDetectorConfig(IcmpFailureDetectorConfig)public RestServerEndpointConfig getRestEndpointConfig()
Copyright © 2020 Hazelcast, Inc.. All Rights Reserved.