Class SubscriptionProfilesCalculator
- java.lang.Object
-
- pl.allegro.tech.hermes.consumers.supervisor.workload.weighted.SubscriptionProfilesCalculator
-
- All Implemented Interfaces:
BalancingListener,SubscriptionProfileProvider
@NotThreadSafe public class SubscriptionProfilesCalculator extends java.lang.Object implements SubscriptionProfileProvider, BalancingListener
-
-
Constructor Summary
Constructors Constructor Description SubscriptionProfilesCalculator(ConsumerNodeLoadRegistry consumerNodeLoadRegistry, SubscriptionProfileRegistry subscriptionProfileRegistry, java.time.Clock clock, java.time.Duration weightWindowSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description pl.allegro.tech.hermes.consumers.supervisor.workload.weighted.SubscriptionProfileget(pl.allegro.tech.hermes.api.SubscriptionName subscriptionName)voidonAfterBalancing(WorkDistributionChanges changes)voidonBeforeBalancing(java.util.List<java.lang.String> activeConsumers)
-
-
-
Constructor Detail
-
SubscriptionProfilesCalculator
public SubscriptionProfilesCalculator(ConsumerNodeLoadRegistry consumerNodeLoadRegistry, SubscriptionProfileRegistry subscriptionProfileRegistry, java.time.Clock clock, java.time.Duration weightWindowSize)
-
-
Method Detail
-
onBeforeBalancing
public void onBeforeBalancing(java.util.List<java.lang.String> activeConsumers)
- Specified by:
onBeforeBalancingin interfaceBalancingListener
-
onAfterBalancing
public void onAfterBalancing(WorkDistributionChanges changes)
- Specified by:
onAfterBalancingin interfaceBalancingListener
-
get
public pl.allegro.tech.hermes.consumers.supervisor.workload.weighted.SubscriptionProfile get(pl.allegro.tech.hermes.api.SubscriptionName subscriptionName)
- Specified by:
getin interfaceSubscriptionProfileProvider
-
-