Class BatchConsumer
java.lang.Object
pl.allegro.tech.hermes.consumers.consumer.BatchConsumer
- All Implemented Interfaces:
Consumer
-
Constructor Summary
ConstructorsConstructorDescriptionBatchConsumer(ReceiverFactory messageReceiverFactory, MessageBatchSender sender, MessageBatchFactory batchFactory, MessageConverterResolver messageConverterResolver, pl.allegro.tech.hermes.common.message.wrapper.CompositeMessageContentWrapper compositeMessageContentWrapper, pl.allegro.tech.hermes.common.metric.MetricsFacade metricsFacade, pl.allegro.tech.hermes.tracker.consumers.Trackers trackers, pl.allegro.tech.hermes.api.Subscription subscription, pl.allegro.tech.hermes.api.Topic topic, boolean useTopicMessageSize, SubscriptionLoadRecorder loadRecorder, Duration commitPeriod) -
Method Summary
Modifier and TypeMethodDescriptionvoidcommit(Set<SubscriptionPartitionOffset> offsetsToCommit) voidConsume **must** make sure that interrupted status is restored as it is needed for stopping unhealthy consumers.pl.allegro.tech.hermes.api.Subscriptionvoidpl.allegro.tech.hermes.common.kafka.offset.PartitionOffsetsmoveOffset(pl.allegro.tech.hermes.common.kafka.offset.PartitionOffsets partitionOffsets) voidtearDown()voidupdateSubscription(pl.allegro.tech.hermes.api.Subscription subscription) voidupdateTopic(pl.allegro.tech.hermes.api.Topic newTopic)
-
Constructor Details
-
BatchConsumer
public BatchConsumer(ReceiverFactory messageReceiverFactory, MessageBatchSender sender, MessageBatchFactory batchFactory, MessageConverterResolver messageConverterResolver, pl.allegro.tech.hermes.common.message.wrapper.CompositeMessageContentWrapper compositeMessageContentWrapper, pl.allegro.tech.hermes.common.metric.MetricsFacade metricsFacade, pl.allegro.tech.hermes.tracker.consumers.Trackers trackers, pl.allegro.tech.hermes.api.Subscription subscription, pl.allegro.tech.hermes.api.Topic topic, boolean useTopicMessageSize, SubscriptionLoadRecorder loadRecorder, Duration commitPeriod)
-
-
Method Details
-
consume
Description copied from interface:ConsumerConsume **must** make sure that interrupted status is restored as it is needed for stopping unhealthy consumers. Swallowing the interrupt by consume or any of its dependencies will result in consumer being marked as unhealthy and will prevent commits despite messages being sent to subscribers. -
initialize
public void initialize()- Specified by:
initializein interfaceConsumer
-
tearDown
public void tearDown() -
updateSubscription
public void updateSubscription(pl.allegro.tech.hermes.api.Subscription subscription) - Specified by:
updateSubscriptionin interfaceConsumer
-
updateTopic
public void updateTopic(pl.allegro.tech.hermes.api.Topic newTopic) - Specified by:
updateTopicin interfaceConsumer
-
commit
-
moveOffset
public pl.allegro.tech.hermes.common.kafka.offset.PartitionOffsets moveOffset(pl.allegro.tech.hermes.common.kafka.offset.PartitionOffsets partitionOffsets) - Specified by:
moveOffsetin interfaceConsumer
-
getSubscription
public pl.allegro.tech.hermes.api.Subscription getSubscription()- Specified by:
getSubscriptionin interfaceConsumer
-
getAssignedPartitions
- Specified by:
getAssignedPartitionsin interfaceConsumer
-