Class MultiDCAwareService
- java.lang.Object
-
- pl.allegro.tech.hermes.management.infrastructure.kafka.MultiDCAwareService
-
public class MultiDCAwareService extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description MultiDCAwareService(java.util.List<BrokersClusterService> clusters, java.time.Clock clock, java.time.Duration intervalBetweenCheckingIfOffsetsMoved, java.time.Duration offsetsMovedTimeout, MultiDatacenterRepositoryCommandExecutor multiDcExecutor)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanallSubscriptionsHaveConsumersAssigned(pl.allegro.tech.hermes.api.Topic topic, java.util.List<pl.allegro.tech.hermes.api.Subscription> subscriptions)booleanareOffsetsAvailableOnAllKafkaTopics(pl.allegro.tech.hermes.api.Topic topic)voidcreateConsumerGroups(pl.allegro.tech.hermes.api.Topic topic, pl.allegro.tech.hermes.api.Subscription subscription)java.util.List<pl.allegro.tech.hermes.api.ConsumerGroup>describeConsumerGroups(pl.allegro.tech.hermes.api.Topic topic, java.lang.String subscriptionName)java.util.Set<java.lang.String>listTopicFromAllDC()voidmanageTopic(java.util.function.Consumer<BrokerTopicManagement> manageFunction)MultiDCOffsetChangeSummarymoveOffset(pl.allegro.tech.hermes.api.Topic topic, java.lang.String subscriptionName, java.lang.Long timestamp, boolean dryRun, RequestUser requester)java.lang.StringreadMessageFromPrimary(java.lang.String clusterName, pl.allegro.tech.hermes.api.Topic topic, java.lang.Integer partition, java.lang.Long offset)voidremoveTopicByName(java.lang.String topicName)booleantopicExists(pl.allegro.tech.hermes.api.Topic topic)
-
-
-
Constructor Detail
-
MultiDCAwareService
public MultiDCAwareService(java.util.List<BrokersClusterService> clusters, java.time.Clock clock, java.time.Duration intervalBetweenCheckingIfOffsetsMoved, java.time.Duration offsetsMovedTimeout, MultiDatacenterRepositoryCommandExecutor multiDcExecutor)
-
-
Method Detail
-
manageTopic
public void manageTopic(java.util.function.Consumer<BrokerTopicManagement> manageFunction)
-
readMessageFromPrimary
public java.lang.String readMessageFromPrimary(java.lang.String clusterName, pl.allegro.tech.hermes.api.Topic topic, java.lang.Integer partition, java.lang.Long offset)
-
moveOffset
public MultiDCOffsetChangeSummary moveOffset(pl.allegro.tech.hermes.api.Topic topic, java.lang.String subscriptionName, java.lang.Long timestamp, boolean dryRun, RequestUser requester)
-
areOffsetsAvailableOnAllKafkaTopics
public boolean areOffsetsAvailableOnAllKafkaTopics(pl.allegro.tech.hermes.api.Topic topic)
-
topicExists
public boolean topicExists(pl.allegro.tech.hermes.api.Topic topic)
-
listTopicFromAllDC
public java.util.Set<java.lang.String> listTopicFromAllDC()
-
removeTopicByName
public void removeTopicByName(java.lang.String topicName)
-
createConsumerGroups
public void createConsumerGroups(pl.allegro.tech.hermes.api.Topic topic, pl.allegro.tech.hermes.api.Subscription subscription)
-
allSubscriptionsHaveConsumersAssigned
public boolean allSubscriptionsHaveConsumersAssigned(pl.allegro.tech.hermes.api.Topic topic, java.util.List<pl.allegro.tech.hermes.api.Subscription> subscriptions)
-
describeConsumerGroups
public java.util.List<pl.allegro.tech.hermes.api.ConsumerGroup> describeConsumerGroups(pl.allegro.tech.hermes.api.Topic topic, java.lang.String subscriptionName)
-
-