public class InfinispanClusterManager extends Object implements ClusterManager
| Constructor and Description |
|---|
InfinispanClusterManager()
Creates a new cluster manager configured with
infinispan.xml and jgroups.xml files. |
InfinispanClusterManager(org.infinispan.manager.DefaultCacheManager cacheManager)
Creates a new cluster manager with an existing
DefaultCacheManager. |
| Modifier and Type | Method and Description |
|---|---|
void |
addRegistration(String address,
RegistrationInfo registrationInfo,
Promise<Void> promise)
Share a new messaging handler registration with other nodes in the cluster.
|
String |
clusterHost()
If the cluster manager has its own server for data/membership, this returns the host it is listening to.
|
String |
clusterPublicHost()
If the cluster manager has its own server for data/membership, this returns the host it advertises to other nodes.
|
<K,V> void |
getAsyncMap(String name,
Promise<AsyncMap<K,V>> promise)
Return an
AsyncMap for the given name. |
org.infinispan.commons.api.BasicCacheContainer |
getCacheContainer() |
void |
getCounter(String name,
Promise<Counter> promise)
Return a
Counter for the given name. |
void |
getLockWithTimeout(String name,
long timeout,
Promise<Lock> promise)
|
String |
getNodeId()
Return the unique node identifier for this node.
|
NodeInfo |
getNodeInfo()
Get details about this clustered node.
|
void |
getNodeInfo(String nodeId,
Promise<NodeInfo> promise)
Get details about a specific node in the cluster.
|
List<String> |
getNodes()
Return a list of node identifiers corresponding to the nodes in the cluster.
|
void |
getRegistrations(String address,
Promise<List<RegistrationInfo>> promise)
Get the messaging handler currently registered in the cluster.
|
<K,V> Map<K,V> |
getSyncMap(String name)
Return a synchronous map for the given
name. |
void |
init(Vertx vertx,
NodeSelector nodeSelector)
Invoked before this cluster node tries to join the cluster.
|
boolean |
isActive()
Is the cluster manager active?
|
void |
join(Promise<Void> promise)
Join the cluster.
|
void |
leave(Promise<Void> promise)
Leave the cluster.
|
void |
nodeListener(NodeListener nodeListener)
Set a listener that will be called when a node joins or leaves the cluster.
|
void |
removeRegistration(String address,
RegistrationInfo registrationInfo,
Promise<Void> promise)
Signal removal of a messaging handler registration to other nodes in the cluster.
|
void |
setNodeInfo(NodeInfo nodeInfo,
Promise<Void> promise)
Store the details about this clustered node.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitinitpublic InfinispanClusterManager()
infinispan.xml and jgroups.xml files.public InfinispanClusterManager(org.infinispan.manager.DefaultCacheManager cacheManager)
DefaultCacheManager.
It is your responsibility to start/stop the cache manager when the Vert.x instance joins/leaves the cluster.cacheManager - the existing cache managerpublic void init(Vertx vertx, NodeSelector nodeSelector)
ClusterManager
Implementations must signal the provided nodeSelector when messaging handler registrations are added or removed
by sending a RegistrationUpdateEvent with NodeSelector.registrationsUpdated(RegistrationUpdateEvent).
init in interface ClusterManagervertx - the Vert.x instancenodeSelector - the NodeSelector that must receive RegistrationUpdateEvent.public org.infinispan.commons.api.BasicCacheContainer getCacheContainer()
public <K,V> void getAsyncMap(String name, Promise<AsyncMap<K,V>> promise)
ClusterManagerAsyncMap for the given name.getAsyncMap in interface ClusterManagerpublic <K,V> Map<K,V> getSyncMap(String name)
ClusterManagername.getSyncMap in interface ClusterManagerpublic void getLockWithTimeout(String name, long timeout, Promise<Lock> promise)
ClusterManagergetLockWithTimeout in interface ClusterManagerpublic void getCounter(String name, Promise<Counter> promise)
ClusterManagerCounter for the given name.getCounter in interface ClusterManagerpublic String getNodeId()
ClusterManagergetNodeId in interface ClusterManagerpublic List<String> getNodes()
ClusterManagergetNodes in interface ClusterManagerpublic void nodeListener(NodeListener nodeListener)
ClusterManagernodeListener in interface ClusterManagerpublic void setNodeInfo(NodeInfo nodeInfo, Promise<Void> promise)
ClusterManagersetNodeInfo in interface ClusterManagerpublic NodeInfo getNodeInfo()
ClusterManagergetNodeInfo in interface ClusterManagerpublic void getNodeInfo(String nodeId, Promise<NodeInfo> promise)
ClusterManagergetNodeInfo in interface ClusterManagernodeId - the clustered node idpublic void join(Promise<Void> promise)
ClusterManagerjoin in interface ClusterManagerpublic void leave(Promise<Void> promise)
ClusterManagerleave in interface ClusterManagerpublic boolean isActive()
ClusterManagerisActive in interface ClusterManagerpublic void addRegistration(String address, RegistrationInfo registrationInfo, Promise<Void> promise)
ClusterManageraddRegistration in interface ClusterManagerpublic void removeRegistration(String address, RegistrationInfo registrationInfo, Promise<Void> promise)
ClusterManagerremoveRegistration in interface ClusterManagerpublic void getRegistrations(String address, Promise<List<RegistrationInfo>> promise)
ClusterManagergetRegistrations in interface ClusterManagerpublic String clusterHost()
ClusterManagerclusterHost in interface ClusterManagerpublic String clusterPublicHost()
ClusterManagerclusterPublicHost in interface ClusterManagerCopyright © 2023 Eclipse. All rights reserved.