@PrivateApi public interface NodeExtension
Modifier and Type | Method and Description |
---|---|
void |
afterClusterStateChange(ClusterState oldState,
ClusterState newState,
boolean isTransient)
Called after the cluster state change transaction has completed
(successfully or otherwise).
|
void |
afterStart()
Called after node is started
|
void |
beforeClusterStateChange(ClusterState currState,
ClusterState requestedState,
boolean isTransient)
Called before starting a cluster state change transaction.
|
void |
beforeJoin()
Called before node attempts to join to the cluster
|
void |
beforeShutdown()
Called before Node.shutdown()
|
void |
beforeStart()
Called before node is started
|
ChannelInitializerProvider |
createChannelInitializerProvider(IOService ioService)
Creates the ChannelInitializerProvider.
|
DynamicConfigListener |
createDynamicConfigListener()
Creates a listener for changes in dynamic data structure configurations
|
Map<String,Object> |
createExtensionServices()
Creates additional extension services, which will be registered by
service manager during start-up.
|
InboundHandler[] |
createInboundHandlers(EndpointQualifier qualifier,
TcpIpConnection connection,
IOService ioService)
Creates a InboundHandler for given Connection instance.
|
ManagementService |
createJMXManagementService(HazelcastInstanceImpl instance) |
String |
createMemberUuid(Address address)
Creates a UUID for local member
|
ByteArrayProcessor |
createMulticastInputProcessor(IOService ioService)
Returns a byte array processor for incoming data on the Multicast joiner
|
ByteArrayProcessor |
createMulticastOutputProcessor(IOService ioService)
Returns a byte array processor for outgoing data on the Multicast joiner
|
OutboundHandler[] |
createOutboundHandlers(EndpointQualifier qualifier,
TcpIpConnection connection,
IOService ioService)
Creates a OutboundHandler for given Connection instance.
|
InternalSerializationService |
createSerializationService()
Creates a SerializationService instance to be used by this Node.
|
<T> T |
createService(Class<T> type)
Creates a service which is an implementation of given type parameter.
|
TextCommandService |
createTextCommandService() |
TimedMemberStateFactory |
createTimedMemberStateFactory(HazelcastInstanceImpl instance)
Creates a TimedMemberStateFactory for a given Hazelcast instance
|
HotRestartService |
getHotRestartService()
Returns the public hot restart service
|
InternalHotRestartService |
getInternalHotRestartService()
Returns the internal hot restart service
|
ManagementCenterConnectionFactory |
getManagementCenterConnectionFactory() |
MemoryStats |
getMemoryStats()
Returns MemoryStats of for the JVM and current HazelcastInstance.
|
SecurityContext |
getSecurityContext()
Returns SecurityContext for this Node if available, otherwise returns null.
|
SecurityService |
getSecurityService() |
MemberSocketInterceptor |
getSocketInterceptor(EndpointQualifier endpointQualifier)
Returns MemberSocketInterceptor for this Node if available,
otherwise returns null.
|
boolean |
isClientFailoverSupported() |
boolean |
isNodeVersionCompatibleWith(Version clusterVersion)
Check if this node's codebase version is compatible with given cluster version.
|
boolean |
isStartCompleted()
Returns true if the instance has started
|
void |
onClusterStateChange(ClusterState newState,
boolean isTransient)
Called during the commit phase of the cluster state change transaction,
just after updating the value of the cluster state on the local member,
while still holding the cluster lock.
|
void |
onClusterVersionChange(Version newVersion)
Called after cluster version is changed.
|
void |
onInitialClusterState(ClusterState initialState)
Called when initial cluster state is received while joining the cluster.
|
void |
onMemberListChange()
Called synchronously when member list changes
|
void |
onPartitionStateChange()
Called synchronously when partition state (partition assignments, version etc) changes
|
void |
onThreadStart(Thread thread)
Called on thread start to inject/intercept extension specific logic,
like; registering thread in some service,
executing a special method before thread starts to do its own task.
|
void |
onThreadStop(Thread thread)
Called before a thread stops to clean/release injected by
onThreadStart(Thread) . |
void |
printNodeInfo()
Called to print node information during startup
|
boolean |
registerListener(Object listener)
Registers given listener if it's a known type.
|
void |
registerPlugins(Diagnostics diagnostics)
Register the node extension specific diagnostics plugins on the provided
diagnostics . |
void |
scheduleClusterVersionAutoUpgrade()
Cluster version auto upgrade is done asynchronously.
|
void |
sendPhoneHome()
Send PhoneHome ping from OS or EE instance to PhoneHome application
|
void |
shutdown()
Shutdowns NodeExtension.
|
void |
validateJoinRequest(JoinMessage joinMessage)
Executed on the master node before allowing a new member to join from
ClusterJoinManager.handleJoinRequest(JoinRequest, Connection) . |
void beforeStart()
void printNodeInfo()
void beforeJoin()
void afterStart()
boolean isStartCompleted()
void beforeShutdown()
void shutdown()
InternalSerializationService createSerializationService()
SecurityService getSecurityService()
SecurityContext getSecurityContext()
<T> T createService(Class<T> type)
type
- type of serviceIllegalArgumentException
- if type is not knownMap<String,Object> createExtensionServices()
MemberSocketInterceptor getSocketInterceptor(EndpointQualifier endpointQualifier)
endpointQualifier
- InboundHandler[] createInboundHandlers(EndpointQualifier qualifier, TcpIpConnection connection, IOService ioService)
connection
- tcp-ip connectionioService
- IOServiceOutboundHandler[] createOutboundHandlers(EndpointQualifier qualifier, TcpIpConnection connection, IOService ioService)
connection
- tcp-ip connectionioService
- IOServiceChannelInitializerProvider createChannelInitializerProvider(IOService ioService)
ioService
- void onThreadStart(Thread thread)
thread
- thread startingvoid onThreadStop(Thread thread)
onThreadStart(Thread)
.thread
- thread stoppingMemoryStats getMemoryStats()
void validateJoinRequest(JoinMessage joinMessage)
ClusterJoinManager.handleJoinRequest(JoinRequest, Connection)
.
Implementation should check if the JoinMessage
should be allowed to proceed, otherwise throw an exception
with a message explaining rejection reason.void onInitialClusterState(ClusterState initialState)
initialState
- initial cluster statevoid beforeClusterStateChange(ClusterState currState, ClusterState requestedState, boolean isTransient)
currState
- the state before the changerequestedState
- the requested cluster stateisTransient
- whether the change will be recorded in persistent storage, affecting the
initial state after cluster restart. Transient changes happen during
system operations such as an orderly all-cluster shutdown.void onClusterStateChange(ClusterState newState, boolean isTransient)
newState
- the new cluster stateisTransient
- whether the change will be recorded in persistent storage, affecting the
initial state after cluster restart. Transient changes happen during
system operations such as an orderly all-cluster shutdown.void afterClusterStateChange(ClusterState oldState, ClusterState newState, boolean isTransient)
oldState
- the state before the changenewState
- the new cluster state, can be equal to oldState
if the
state change transaction failedisTransient
- whether the change will be recorded in persistent storage, affecting the
initial state after cluster restart. Transient changes happen during
system operations such as an orderly all-cluster shutdown.void onPartitionStateChange()
void onMemberListChange()
void onClusterVersionChange(Version newVersion)
newVersion
- the new version at which the cluster operates.boolean isNodeVersionCompatibleWith(Version clusterVersion)
clusterVersion
- the cluster version to check againsttrue
if compatible, otherwise false.boolean registerListener(Object listener)
listener
- listener instanceHotRestartService getHotRestartService()
InternalHotRestartService getInternalHotRestartService()
String createMemberUuid(Address address)
address
- address of local memberTimedMemberStateFactory createTimedMemberStateFactory(HazelcastInstanceImpl instance)
instance
- The instance to associate with the timed member state factoryTimedMemberStateFactory
ManagementCenterConnectionFactory getManagementCenterConnectionFactory()
ManagementService createJMXManagementService(HazelcastInstanceImpl instance)
TextCommandService createTextCommandService()
ByteArrayProcessor createMulticastInputProcessor(IOService ioService)
ByteArrayProcessor createMulticastOutputProcessor(IOService ioService)
DynamicConfigListener createDynamicConfigListener()
void registerPlugins(Diagnostics diagnostics)
diagnostics
.diagnostics
- the diagnostics on which plugins should be registeredvoid sendPhoneHome()
void scheduleClusterVersionAutoUpgrade()
boolean isClientFailoverSupported()
Copyright © 2020 Hazelcast, Inc.. All Rights Reserved.