Class NonPersistentDispatcherSingleActiveConsumer
- java.lang.Object
-
- org.apache.pulsar.broker.service.AbstractBaseDispatcher
-
- org.apache.pulsar.broker.service.AbstractDispatcherSingleActiveConsumer
-
- org.apache.pulsar.broker.service.nonpersistent.NonPersistentDispatcherSingleActiveConsumer
-
- All Implemented Interfaces:
Dispatcher,NonPersistentDispatcher
public final class NonPersistentDispatcherSingleActiveConsumer extends AbstractDispatcherSingleActiveConsumer implements NonPersistentDispatcher
-
-
Field Summary
-
Fields inherited from class org.apache.pulsar.broker.service.AbstractDispatcherSingleActiveConsumer
ACTIVE_CONSUMER_UPDATER, closeFuture, consumers, cursor, FALSE, IS_CLOSED_UPDATER, isFirstRead, isKeyHashRangeFiltered, partitionIndex, stickyKeyConsumerSelector, subscriptionType, topicName, TRUE
-
Fields inherited from class org.apache.pulsar.broker.service.AbstractBaseDispatcher
dispatchThrottlingOnBatchMessageEnabled, entryFilters, filterContext, serviceConfig
-
-
Constructor Summary
Constructors Constructor Description NonPersistentDispatcherSingleActiveConsumer(org.apache.pulsar.common.api.proto.CommandSubscribe.SubType subscriptionType, int partitionIndex, NonPersistentTopic topic, Subscription subscription)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcancelPendingRead()voidconsumerFlow(Consumer consumer, int additionalNumberOfMessages)Indicates that this consumer is now ready to receive more messages.org.apache.pulsar.common.stats.RategetMessageDropRate()RedeliveryTrackergetRedeliveryTracker()booleanhasPermits()protected booleanisConsumersExceededOnSubscription()Determine whether the number of consumers on the subscription reaches the threshold.protected voidreadMoreEntries(Consumer consumer)protected voidreScheduleRead()protected voidscheduleReadOnActiveConsumer()voidsendMessages(java.util.List<org.apache.bookkeeper.mledger.Entry> entries)-
Methods inherited from class org.apache.pulsar.broker.service.AbstractDispatcherSingleActiveConsumer
addConsumer, canUnsubscribe, close, disconnectActiveConsumers, disconnectAllConsumers, getActiveConsumer, getConsumers, getType, isClosed, isConsumerConnected, notifyActiveConsumerChanged, pickAndScheduleActiveConsumer, removeConsumer, reset, resetCloseFuture
-
Methods inherited from class org.apache.pulsar.broker.service.AbstractBaseDispatcher
computeReadLimits, filterEntriesForConsumer, filterEntriesForConsumer, isConsumersExceededOnSubscription, peekStickyKey, reachDispatchRateLimit, updateEntryWrapperWithMetadata, updateMessagesToRead
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.pulsar.broker.service.Dispatcher
checkAndUnblockIfStuck, clearDelayedMessages, cursorIsReset, disconnectActiveConsumers, disconnectAllConsumers, getNumberOfDelayedMessages, getRateLimiter, initializeDispatchRateLimiterIfNeeded, isClosed, markDeletePositionMoveForward, resetCloseFuture, trackDelayedDelivery, updateRateLimiter
-
Methods inherited from interface org.apache.pulsar.broker.service.nonpersistent.NonPersistentDispatcher
addConsumer, addUnAckedMessages, canUnsubscribe, close, disconnectAllConsumers, getConsumers, getType, isConsumerConnected, redeliverUnacknowledgedMessages, redeliverUnacknowledgedMessages, removeConsumer, reset
-
-
-
-
Constructor Detail
-
NonPersistentDispatcherSingleActiveConsumer
public NonPersistentDispatcherSingleActiveConsumer(org.apache.pulsar.common.api.proto.CommandSubscribe.SubType subscriptionType, int partitionIndex, NonPersistentTopic topic, Subscription subscription)
-
-
Method Detail
-
sendMessages
public void sendMessages(java.util.List<org.apache.bookkeeper.mledger.Entry> entries)
- Specified by:
sendMessagesin interfaceNonPersistentDispatcher
-
isConsumersExceededOnSubscription
protected boolean isConsumersExceededOnSubscription()
Description copied from class:AbstractBaseDispatcherDetermine whether the number of consumers on the subscription reaches the threshold.- Specified by:
isConsumersExceededOnSubscriptionin classAbstractBaseDispatcher- Returns:
-
getMessageDropRate
public org.apache.pulsar.common.stats.Rate getMessageDropRate()
- Specified by:
getMessageDropRatein interfaceNonPersistentDispatcher
-
hasPermits
public boolean hasPermits()
- Specified by:
hasPermitsin interfaceNonPersistentDispatcher
-
consumerFlow
public void consumerFlow(Consumer consumer, int additionalNumberOfMessages)
Description copied from interface:DispatcherIndicates that this consumer is now ready to receive more messages.- Specified by:
consumerFlowin interfaceDispatcher
-
getRedeliveryTracker
public RedeliveryTracker getRedeliveryTracker()
- Specified by:
getRedeliveryTrackerin interfaceDispatcher
-
scheduleReadOnActiveConsumer
protected void scheduleReadOnActiveConsumer()
- Specified by:
scheduleReadOnActiveConsumerin classAbstractDispatcherSingleActiveConsumer
-
readMoreEntries
protected void readMoreEntries(Consumer consumer)
- Specified by:
readMoreEntriesin classAbstractDispatcherSingleActiveConsumer
-
cancelPendingRead
protected void cancelPendingRead()
- Specified by:
cancelPendingReadin classAbstractDispatcherSingleActiveConsumer
-
reScheduleRead
protected void reScheduleRead()
- Specified by:
reScheduleReadin classAbstractBaseDispatcher
-
-