Class MaxRateRegistry
- java.lang.Object
-
- pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.MaxRateRegistry
-
- All Implemented Interfaces:
org.apache.curator.framework.recipes.cache.NodeCacheListener
public class MaxRateRegistry extends java.lang.Object implements org.apache.curator.framework.recipes.cache.NodeCacheListener
-
-
Constructor Summary
Constructors Constructor Description MaxRateRegistry(int historiesEncoderBufferSize, int maxRateEncoderBufferSize, java.lang.String nodeId, java.lang.String clusterName, ClusterAssignmentCache clusterAssignmentCache, ConsumerAssignmentCache consumerAssignmentCache, org.apache.curator.framework.CuratorFramework curator, pl.allegro.tech.hermes.infrastructure.zookeeper.ZookeeperPaths zookeeperPaths, SubscriptionIds subscriptionIds)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Set<pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerRateInfo>ensureCorrectAssignments(pl.allegro.tech.hermes.api.SubscriptionName subscriptionName, java.util.Set<java.lang.String> currentConsumers)java.util.Optional<pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.MaxRate>getMaxRate(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer)RateHistorygetRateHistory(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer)voidnodeChanged()voidonAfterMaxRateCalculation()voidonAfterWriteRateHistories()voidonBeforeMaxRateCalculation()voidstart()voidstop()voidupdate(pl.allegro.tech.hermes.api.SubscriptionName subscriptionName, java.util.Map<java.lang.String,pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.MaxRate> newMaxRates)voidwriteRateHistory(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer, RateHistory rateHistory)
-
-
-
Constructor Detail
-
MaxRateRegistry
public MaxRateRegistry(int historiesEncoderBufferSize, int maxRateEncoderBufferSize, java.lang.String nodeId, java.lang.String clusterName, ClusterAssignmentCache clusterAssignmentCache, ConsumerAssignmentCache consumerAssignmentCache, org.apache.curator.framework.CuratorFramework curator, pl.allegro.tech.hermes.infrastructure.zookeeper.ZookeeperPaths zookeeperPaths, SubscriptionIds subscriptionIds)
-
-
Method Detail
-
start
public void start()
-
stop
public void stop()
-
onBeforeMaxRateCalculation
public void onBeforeMaxRateCalculation()
-
onAfterMaxRateCalculation
public void onAfterMaxRateCalculation()
-
ensureCorrectAssignments
public java.util.Set<pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerRateInfo> ensureCorrectAssignments(pl.allegro.tech.hermes.api.SubscriptionName subscriptionName, java.util.Set<java.lang.String> currentConsumers)
-
update
public void update(pl.allegro.tech.hermes.api.SubscriptionName subscriptionName, java.util.Map<java.lang.String,pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.MaxRate> newMaxRates)
-
getMaxRate
public java.util.Optional<pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.MaxRate> getMaxRate(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer)
-
getRateHistory
public RateHistory getRateHistory(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer)
-
writeRateHistory
public void writeRateHistory(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer, RateHistory rateHistory)
-
onAfterWriteRateHistories
public void onAfterWriteRateHistories()
-
nodeChanged
public void nodeChanged()
- Specified by:
nodeChangedin interfaceorg.apache.curator.framework.recipes.cache.NodeCacheListener
-
-