Class OHazelcastClusterMetadataManager
java.lang.Object
com.orientechnologies.orient.server.hazelcast.OHazelcastClusterMetadataManager
- All Implemented Interfaces:
com.hazelcast.core.EntryListener<String,,Object> com.hazelcast.core.LifecycleListener,com.hazelcast.core.MembershipListener,com.hazelcast.map.listener.EntryAddedListener<String,,Object> com.hazelcast.map.listener.EntryEvictedListener<String,,Object> com.hazelcast.map.listener.EntryRemovedListener<String,,Object> com.hazelcast.map.listener.EntryUpdatedListener<String,,Object> com.hazelcast.map.listener.MapClearedListener,com.hazelcast.map.listener.MapEvictedListener,com.hazelcast.map.listener.MapListener,EventListener
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ConcurrentMap<String,com.hazelcast.core.Member> protected ConcurrentMap<String,String> protected ConcurrentMap<String,String> protected ConcurrentMap<String,Long> static final Stringstatic final Stringstatic final Stringstatic final Stringprotected OHazelcastDistributedMapprotected com.hazelcast.config.Configprotected Stringprotected com.hazelcast.core.HazelcastInstanceprotected longprotected Stringprotected Stringprotected TimerTaskprotected final ConcurrentMap<String,Integer> protected NODE_STATUS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidconfigHazelcastPlugin(OServer server, OServerParameterConfiguration[] params, String nodeName) protected com.hazelcast.core.HazelcastInstancevoiddropDatabaseConfiguration(String dbName) dropDbFromConfiguration(String dbName) voidentryAdded(com.hazelcast.core.EntryEvent<String, Object> iEvent) voidentryEvicted(com.hazelcast.core.EntryEvent<String, Object> iEvent) voidentryRemoved(com.hazelcast.core.EntryEvent<String, Object> iEvent) voidentryUpdated(com.hazelcast.core.EntryEvent<String, Object> iEvent) <T> TexecuteInDistributedDatabaseLock(String databaseName, long timeoutLocking, OModifiableDistributedConfiguration lastCfg, OCallable<T, OModifiableDistributedConfiguration> iCallback) Executes an operation protected by a distributed lock (one per database).<T> TexecuteInDistributedDatabaseLock(String databaseName, long timeoutLocking, Callable<T> iCallback) Executes an operation protected by a distributed lock (one per database).getAvailableNodeNames(String iDatabaseName) intgetAvailableNodes(String iDatabaseName) com.hazelcast.core.MembergetClusterMemberByName(String rNodeName) getDatabaseConfiguration(String iDatabaseName) getDatabaseConfiguration(String iDatabaseName, boolean createIfNotPresent) getDatabaseStatus(String iNode, String iDatabaseName) com.hazelcast.core.HazelcastInstancelongintgetNodeConfigurationByName(String nodeName, boolean useCache) getNodeConfigurationByUuid(String iNodeId, boolean useCache) intgetNodeIdByName(String name) getNodeName(com.hazelcast.core.Member iMember, boolean useCache) getNodeNameById(int id) getNodeUuidByName(String name) getOnlineDatabaseConfiguration(String iDatabaseName) getOnlineNodes(String iDatabaseName) voidbooleanisNodeAvailable(String iNodeName) booleanisNodeAvailable(String iNodeName, String iDatabaseName) booleanisNodeOnline(String iNodeName, String iDatabaseName) booleanisWriteQuorumPresent(String databaseName) voidmapCleared(com.hazelcast.core.MapEvent event) voidmapEvicted(com.hazelcast.core.MapEvent iEvent) voidmemberAdded(com.hazelcast.core.MembershipEvent iEvent) voidmemberAttributeChanged(com.hazelcast.core.MemberAttributeEvent memberAttributeEvent) voidmemberRemoved(com.hazelcast.core.MembershipEvent iEvent) Removes the node map entry.voidvoidpublishDistributedConfiguration(String databaseName, ODistributedConfiguration cfg) protected voidprotected voidregisterNode(com.hazelcast.core.Member member, String joinedNodeName) voidvoidremoveDbFromClusterMetadata(String dbName) com.hazelcast.core.MemberremoveFromLocalActiveServerList(String nodeLeftName) voidremoveNodeFromConfiguration(String nodeLeftName, boolean removeOnlyDynamicServers) booleanremoveNodeFromConfiguration(String nodeLeftName, String databaseName, boolean removeOnlyDynamicServers, boolean statusOffline) voidremoveServerFromCluster(com.hazelcast.core.Member member, String nodeLeftName, boolean removeOnlyDynamicServers) voidsetDatabaseStatus(String iNode, String iDatabaseName, ODistributedServerManager.DB_STATUS iStatus) voidsetNodeStatus(NODE_STATUS iStatus) voidvoidstateChanged(com.hazelcast.core.LifecycleEvent event) inttryGetNodeIdByName(String name) tryGetNodeNameById(int id) booleanupdateCachedDatabaseConfiguration(String databaseName, OModifiableDistributedConfiguration cfg) void
-
Field Details
-
CONFIG_DATABASE_PREFIX
- See Also:
-
CONFIG_NODE_PREFIX
- See Also:
-
CONFIG_DBSTATUS_PREFIX
- See Also:
-
CONFIG_REGISTEREDNODES
- See Also:
-
hazelcastConfigFile
-
hazelcastConfig
protected com.hazelcast.config.Config hazelcastConfig -
membershipListenerRegistration
-
membershipListenerMapRegistration
-
hazelcastInstance
protected volatile com.hazelcast.core.HazelcastInstance hazelcastInstance -
configurationMap
-
activeNodes
-
activeNodesNamesByUuid
-
activeNodesUuidByName
-
registeredNodeById
-
registeredNodeByName
-
autoRemovalOfServers
-
publishLocalNodeConfigurationTask
-
status
-
lastClusterChangeOn
protected long lastClusterChangeOn
-
-
Constructor Details
-
OHazelcastClusterMetadataManager
-
-
Method Details
-
configHazelcastPlugin
public void configHazelcastPlugin(OServer server, OServerParameterConfiguration[] params, String nodeName) -
startupHazelcastPlugin
- Throws:
IOExceptionInterruptedException
-
isWriteQuorumPresent
-
getNodeIdByName
-
getNodeNameById
-
isNodeAvailable
-
isNodeAvailable
-
publishLocalNodeConfiguration
protected void publishLocalNodeConfiguration() -
getLockManagerRequester
-
prepareHazelcastPluginShutdown
public void prepareHazelcastPluginShutdown() -
hazelcastPluginShutdown
public void hazelcastPluginShutdown() -
getClusterMemberByName
-
getHazelcastInstance
public com.hazelcast.core.HazelcastInstance getHazelcastInstance() -
configureHazelcast
- Throws:
FileNotFoundException
-
getPublicAddress
-
getConfigurationMap
-
memberAttributeChanged
public void memberAttributeChanged(com.hazelcast.core.MemberAttributeEvent memberAttributeEvent) - Specified by:
memberAttributeChangedin interfacecom.hazelcast.core.MembershipListener
-
updateCachedDatabaseConfiguration
public boolean updateCachedDatabaseConfiguration(String databaseName, OModifiableDistributedConfiguration cfg) -
publishDistributedConfiguration
-
entryAdded
-
entryUpdated
-
entryRemoved
-
entryEvicted
-
mapEvicted
public void mapEvicted(com.hazelcast.core.MapEvent iEvent) - Specified by:
mapEvictedin interfacecom.hazelcast.map.listener.MapEvictedListener
-
mapCleared
public void mapCleared(com.hazelcast.core.MapEvent event) - Specified by:
mapClearedin interfacecom.hazelcast.map.listener.MapClearedListener
-
memberRemoved
public void memberRemoved(com.hazelcast.core.MembershipEvent iEvent) Removes the node map entry.- Specified by:
memberRemovedin interfacecom.hazelcast.core.MembershipListener
-
memberAdded
public void memberAdded(com.hazelcast.core.MembershipEvent iEvent) - Specified by:
memberAddedin interfacecom.hazelcast.core.MembershipListener
-
stateChanged
public void stateChanged(com.hazelcast.core.LifecycleEvent event) - Specified by:
stateChangedin interfacecom.hazelcast.core.LifecycleListener
-
removeDbFromClusterMetadata
-
dropDatabaseConfiguration
-
dropDbFromConfiguration
-
getNodeConfigurationByUuid
-
getNodeConfigurationByName
-
getDatabaseStatus
-
setDatabaseStatus
public void setDatabaseStatus(String iNode, String iDatabaseName, ODistributedServerManager.DB_STATUS iStatus) -
getDatabases
-
reloadRegisteredNodes
public void reloadRegisteredNodes() -
removeNodeFromConfiguration
-
removeNodeFromConfiguration
-
removeFromLocalActiveServerList
-
removeServerFromCluster
public void removeServerFromCluster(com.hazelcast.core.Member member, String nodeLeftName, boolean removeOnlyDynamicServers) -
getActiveServers
-
registerNode
-
getNodeName
-
getClusterConfiguration
-
tryGetNodeNameById
-
tryGetNodeIdByName
-
getNodeUuidByName
-
getAvailableNodes
-
getOnlineNodes
-
getAvailableNodeNames
-
executeInDistributedDatabaseLock
public <T> T executeInDistributedDatabaseLock(String databaseName, long timeoutLocking, OModifiableDistributedConfiguration lastCfg, OCallable<T, OModifiableDistributedConfiguration> iCallback) Executes an operation protected by a distributed lock (one per database).- Type Parameters:
T- Return type- Parameters:
databaseName- Database nameiCallback- Operation @return The operation's result of type T
-
executeInDistributedDatabaseLock
public <T> T executeInDistributedDatabaseLock(String databaseName, long timeoutLocking, Callable<T> iCallback) Executes an operation protected by a distributed lock (one per database).- Type Parameters:
T- Return type- Parameters:
databaseName- Database nameiCallback- Operation @return The operation's result of type T
-
getOnlineDatabaseConfiguration
-
getDatabaseConfiguration
-
getDatabaseConfiguration
public ODistributedConfiguration getDatabaseConfiguration(String iDatabaseName, boolean createIfNotPresent) -
setNodeStatus
-
getNodeStatus
-
isNodeOnline
-
updateLastClusterChange
public void updateLastClusterChange() -
getLastClusterChangeOn
public long getLastClusterChangeOn() -
getLocalNodeId
public int getLocalNodeId() -
getLocalNodeUuid
-
getLocalNodeName
-