Package org.infinispan.affinity.impl
Class KeyAffinityServiceImpl<K>
java.lang.Object
org.infinispan.affinity.impl.KeyAffinityServiceImpl<K>
- All Implemented Interfaces:
KeyAffinityService<K>
,org.infinispan.commons.api.Lifecycle
Implementation of KeyAffinityService.
- Since:
- 4.1
- Author:
- [email protected]
-
Field Summary
-
Constructor Summary
ConstructorDescriptionKeyAffinityServiceImpl
(Executor executor, Cache<? extends K, ?> cache, KeyGenerator<? extends K> keyGenerator, int bufferSize, Collection<Address> filter, boolean start) -
Method Summary
Modifier and TypeMethodDescriptiongetCollocatedKey
(K otherKey) Returns a key that will be distributed on the same node as the supplied key.getKeyForAddress
(Address address) Returns a key that will be distributed on the cluster node identified by address.int
void
void
handleViewChange
(TopologyChangedEvent<?, ?> vce) boolean
boolean
boolean
Checks weather or not the service is started.void
start()
void
stop()
-
Field Details
-
THRESHOLD
public static final float THRESHOLD- See Also:
-
-
Constructor Details
-
KeyAffinityServiceImpl
public KeyAffinityServiceImpl(Executor executor, Cache<? extends K, ?> cache, KeyGenerator<? extends K> keyGenerator, int bufferSize, Collection<Address> filter, boolean start)
-
-
Method Details
-
getCollocatedKey
Description copied from interface:KeyAffinityService
Returns a key that will be distributed on the same node as the supplied key.- Specified by:
getCollocatedKey
in interfaceKeyAffinityService<K>
- Parameters:
otherKey
- the key for which we need a collocation- Returns:
- a key object
-
getKeyForAddress
Description copied from interface:KeyAffinityService
Returns a key that will be distributed on the cluster node identified by address.- Specified by:
getKeyForAddress
in interfaceKeyAffinityService<K>
- Parameters:
address
- identifying the cluster node.- Returns:
- a key object
-
start
public void start()- Specified by:
start
in interfaceorg.infinispan.commons.api.Lifecycle
-
stop
public void stop()- Specified by:
stop
in interfaceorg.infinispan.commons.api.Lifecycle
-
handleViewChange
-
isKeyGeneratorThreadAlive
public boolean isKeyGeneratorThreadAlive() -
handleCacheStopped
-
getAddress2KeysMapping
-
getMaxNumberOfKeys
public int getMaxNumberOfKeys() -
isKeyGeneratorThreadActive
public boolean isKeyGeneratorThreadActive() -
isStarted
public boolean isStarted()Description copied from interface:KeyAffinityService
Checks weather or not the service is started.- Specified by:
isStarted
in interfaceKeyAffinityService<K>
-