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 Object
implements org.apache.curator.framework.recipes.cache.NodeCacheListener
-
Constructor Summary
ConstructorsConstructorDescriptionMaxRateRegistry(int historiesEncoderBufferSize, int maxRateEncoderBufferSize, String nodeId, String clusterName, ClusterAssignmentCache clusterAssignmentCache, ConsumerAssignmentCache consumerAssignmentCache, org.apache.curator.framework.CuratorFramework curator, pl.allegro.tech.hermes.infrastructure.zookeeper.ZookeeperPaths zookeeperPaths, SubscriptionIds subscriptionIds) -
Method Summary
Modifier and TypeMethodDescriptionSet<pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerRateInfo> ensureCorrectAssignments(pl.allegro.tech.hermes.api.SubscriptionName subscriptionName, Set<String> currentConsumers) Optional<pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.MaxRate> getMaxRate(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer) getRateHistory(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer) voidvoidvoidvoidvoidstart()voidstop()voidupdate(pl.allegro.tech.hermes.api.SubscriptionName subscriptionName, Map<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 Details
-
MaxRateRegistry
public MaxRateRegistry(int historiesEncoderBufferSize, int maxRateEncoderBufferSize, String nodeId, String clusterName, ClusterAssignmentCache clusterAssignmentCache, ConsumerAssignmentCache consumerAssignmentCache, org.apache.curator.framework.CuratorFramework curator, pl.allegro.tech.hermes.infrastructure.zookeeper.ZookeeperPaths zookeeperPaths, SubscriptionIds subscriptionIds)
-
-
Method Details
-
start
public void start() -
stop
public void stop() -
onBeforeMaxRateCalculation
public void onBeforeMaxRateCalculation() -
onAfterMaxRateCalculation
public void onAfterMaxRateCalculation() -
ensureCorrectAssignments
-
update
-
getMaxRate
public 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
-