Class FlatBinaryMaxRateRegistry
- java.lang.Object
-
- pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.FlatBinaryMaxRateRegistry
-
- All Implemented Interfaces:
org.apache.curator.framework.recipes.cache.NodeCacheListener,MaxRateRegistry
public class FlatBinaryMaxRateRegistry extends java.lang.Object implements MaxRateRegistry, org.apache.curator.framework.recipes.cache.NodeCacheListener
-
-
Constructor Summary
Constructors Constructor Description FlatBinaryMaxRateRegistry(pl.allegro.tech.hermes.common.config.ConfigFactory configFactory, 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
-
FlatBinaryMaxRateRegistry
public FlatBinaryMaxRateRegistry(pl.allegro.tech.hermes.common.config.ConfigFactory configFactory, 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()
- Specified by:
startin interfaceMaxRateRegistry
-
stop
public void stop()
- Specified by:
stopin interfaceMaxRateRegistry
-
onBeforeMaxRateCalculation
public void onBeforeMaxRateCalculation()
- Specified by:
onBeforeMaxRateCalculationin interfaceMaxRateRegistry
-
onAfterMaxRateCalculation
public void onAfterMaxRateCalculation()
- Specified by:
onAfterMaxRateCalculationin interfaceMaxRateRegistry
-
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)- Specified by:
ensureCorrectAssignmentsin interfaceMaxRateRegistry
-
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)- Specified by:
updatein interfaceMaxRateRegistry
-
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)
- Specified by:
getMaxRatein interfaceMaxRateRegistry
-
getRateHistory
public RateHistory getRateHistory(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer)
- Specified by:
getRateHistoryin interfaceMaxRateRegistry
-
writeRateHistory
public void writeRateHistory(pl.allegro.tech.hermes.consumers.consumer.rate.maxrate.ConsumerInstance consumer, RateHistory rateHistory)- Specified by:
writeRateHistoryin interfaceMaxRateRegistry
-
onAfterWriteRateHistories
public void onAfterWriteRateHistories()
- Specified by:
onAfterWriteRateHistoriesin interfaceMaxRateRegistry
-
nodeChanged
public void nodeChanged()
- Specified by:
nodeChangedin interfaceorg.apache.curator.framework.recipes.cache.NodeCacheListener
-
-