Package net.rubyeye.xmemcached.aws
Class ConfigurationPoller
- java.lang.Object
-
- net.rubyeye.xmemcached.aws.ConfigurationPoller
-
- All Implemented Interfaces:
java.lang.Runnable
public class ConfigurationPoller extends java.lang.Object implements java.lang.Runnable
AWS ElastiCache configuration poller
-
-
Field Summary
Fields Modifier and Type Field Description private AWSElasticCacheClient
client
private ClusterConfiguration
clusterConfigration
private static org.slf4j.Logger
log
private java.util.Map<java.lang.String,java.lang.Integer>
ordersMap
private long
pollIntervalMills
private java.util.concurrent.ScheduledExecutorService
scheduledExecutorService
private java.util.concurrent.atomic.AtomicInteger
serverOrderCounter
-
Constructor Summary
Constructors Constructor Description ConfigurationPoller(AWSElasticCacheClient client, long pollIntervalMills)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getCacheNodeOrder(CacheNode node)
ClusterConfiguration
getClusterConfiguration()
Return current ClusterConfigration.void
removeCacheNodeOrder(CacheNode node)
void
run()
void
start()
void
stop()
-
-
-
Field Detail
-
serverOrderCounter
private final java.util.concurrent.atomic.AtomicInteger serverOrderCounter
-
ordersMap
private java.util.Map<java.lang.String,java.lang.Integer> ordersMap
-
log
private static final org.slf4j.Logger log
-
client
private final AWSElasticCacheClient client
-
pollIntervalMills
private final long pollIntervalMills
-
scheduledExecutorService
private java.util.concurrent.ScheduledExecutorService scheduledExecutorService
-
clusterConfigration
private volatile ClusterConfiguration clusterConfigration
-
-
Constructor Detail
-
ConfigurationPoller
public ConfigurationPoller(AWSElasticCacheClient client, long pollIntervalMills)
-
-
Method Detail
-
getClusterConfiguration
public ClusterConfiguration getClusterConfiguration()
Return current ClusterConfigration.- Returns:
-
getCacheNodeOrder
public int getCacheNodeOrder(CacheNode node)
-
removeCacheNodeOrder
public void removeCacheNodeOrder(CacheNode node)
-
start
public void start()
-
stop
public void stop()
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
-
-