Package org.apache.pulsar.client.impl
Class ZeroQueueConsumerImpl<T>
- java.lang.Object
-
- org.apache.pulsar.client.impl.ConsumerBase<T>
-
- org.apache.pulsar.client.impl.ConsumerImpl<T>
-
- org.apache.pulsar.client.impl.ZeroQueueConsumerImpl<T>
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,org.apache.pulsar.client.api.Consumer<T>
public class ZeroQueueConsumerImpl<T> extends ConsumerImpl<T>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.pulsar.client.impl.ConsumerBase
ConsumerBase.OpBatchReceive<T>
-
-
Field Summary
Fields Modifier and Type Field Description protected PulsarClientImplclientprotected java.lang.Stringtopic-
Fields inherited from class org.apache.pulsar.client.impl.ConsumerImpl
chunkedMessagesMap, expireTimeOfIncompleteChunkedMessageMillis, lastDequeuedMessageId, paused, stats
-
Fields inherited from class org.apache.pulsar.client.impl.ConsumerBase
batchReceivePolicy, batchReceiveTimeout, conf, CONSUMER_EPOCH, consumerEpoch, consumerEventListener, consumerName, executorProvider, externalPinnedExecutor, incomingMessagesSize, interceptors, internalPinnedExecutor, listener, maxReceiverQueueSize, pendingBatchReceives, pendingReceives, reentrantLock, schema, subscribeFuture, subscription, unAckedChunkedMessageIdSequenceMap
-
-
Constructor Summary
Constructors Constructor Description ZeroQueueConsumerImpl(PulsarClientImpl client, java.lang.String topic, ConsumerConfigurationData<T> conf, ExecutorProvider executorProvider, int partitionIndex, boolean hasParentConsumer, java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.Consumer<T>> subscribeFuture, org.apache.pulsar.client.api.MessageId startMessageId, org.apache.pulsar.client.api.Schema<T> schema, ConsumerInterceptors<T> interceptors, boolean createTopicIfDoesNotExist)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancanEnqueueMessage(org.apache.pulsar.client.api.Message<T> message)protected booleanchangeToConnecting()protected booleanchangeToReadyState()protected booleanchangeToRegisteringSchemaState()protected voidconsumerIsReconnectedToBroker(ClientCnx cnx, int currentQueueSize)protected org.apache.pulsar.client.impl.HandlerState.StategetAndUpdateState(java.util.function.UnaryOperator<org.apache.pulsar.client.impl.HandlerState.State> updater)PulsarClientImplgetClient()protected org.apache.pulsar.client.impl.HandlerState.StategetState()protected org.apache.pulsar.client.api.Message<T>internalReceive()protected java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.Message<T>>internalReceiveAsync()protected voidsetState(org.apache.pulsar.client.impl.HandlerState.State s)protected voidtryTriggerListener()-
Methods inherited from class org.apache.pulsar.client.impl.ConsumerImpl
clearIncomingMessagesAndGetMessageNumber, closeAsync, completeOpBatchReceive, connectionFailed, connectionOpened, doAcknowledge, doAcknowledge, doReconsumeLater, equals, getAvailablePermits, getClientCnx, getConnectionHandler, getLastDisconnectedTimestamp, getLastMessageIdAsync, getPossibleSendToDeadLetterTopicMessages, getStats, getTopicNameWithoutPartition, getUnAckedMessageTracker, hashCode, hasMessageAvailable, hasMessageAvailableAsync, hasReachedEndOfTopic, increaseAvailablePermits, increaseAvailablePermits, internalBatchReceive, internalBatchReceiveAsync, internalGetLastMessageIdAsync, internalReceive, isBatch, isConnected, isConnected, messageProcessed, negativeAcknowledge, negativeAcknowledge, newMessage, newSingleMessage, numMessagesInQueue, pause, redeliverUnacknowledgedMessages, redeliverUnacknowledgedMessages, removeExpireIncompleteChunkedMessages, resume, seek, seek, seek, seekAsync, seekAsync, seekAsync, trackMessage, trackMessage, trackMessage, unsubscribeAsync
-
Methods inherited from class org.apache.pulsar.client.impl.ConsumerBase
acknowledge, acknowledge, acknowledge, acknowledge, acknowledgeAsync, acknowledgeAsync, acknowledgeAsync, acknowledgeAsync, acknowledgeAsync, acknowledgeCumulative, acknowledgeCumulative, acknowledgeCumulativeAsync, acknowledgeCumulativeAsync, acknowledgeCumulativeAsync, batchReceive, batchReceiveAsync, beforeConsume, callMessageListener, clearIncomingMessages, close, completePendingBatchReceive, completePendingReceive, decreaseIncomingMessageSize, doAcknowledgeWithTxn, doAcknowledgeWithTxn, enqueueMessageAndCheckBatchReceive, failPendingReceive, getConsumerName, getIncomingMessageSize, getLastMessageId, getNewMessagesImpl, getSubscription, getSubType, getTopic, getTotalIncomingMessages, hasBatchReceiveTimeout, hasEnoughMessagesForBatchReceive, hasNextPendingReceive, hasPendingBatchReceive, isValidConsumerEpoch, negativeAcknowledge, nextPendingReceive, notifyPendingBatchReceivedCallBack, notifyPendingBatchReceivedCallBack, onAcknowledge, onAcknowledgeCumulative, onAckTimeoutSend, onNegativeAcksSend, onPartitionsChange, peekMessageKey, receive, receive, receiveAsync, reconsumeLater, reconsumeLater, reconsumeLater, reconsumeLaterAsync, reconsumeLaterAsync, reconsumeLaterAsync, reconsumeLaterCumulative, reconsumeLaterCumulativeAsync, reconsumeLaterCumulativeAsync, resetIncomingMessageSize, setMaxReceiverQueueSize, subscribeFuture, toString, triggerBatchReceiveTimeoutTask, unsubscribe
-
-
-
-
Field Detail
-
client
protected final PulsarClientImpl client
-
topic
protected final java.lang.String topic
-
-
Constructor Detail
-
ZeroQueueConsumerImpl
public ZeroQueueConsumerImpl(PulsarClientImpl client, java.lang.String topic, ConsumerConfigurationData<T> conf, ExecutorProvider executorProvider, int partitionIndex, boolean hasParentConsumer, java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.Consumer<T>> subscribeFuture, org.apache.pulsar.client.api.MessageId startMessageId, org.apache.pulsar.client.api.Schema<T> schema, ConsumerInterceptors<T> interceptors, boolean createTopicIfDoesNotExist)
-
-
Method Detail
-
internalReceive
protected org.apache.pulsar.client.api.Message<T> internalReceive() throws org.apache.pulsar.client.api.PulsarClientException
- Overrides:
internalReceivein classConsumerImpl<T>- Throws:
org.apache.pulsar.client.api.PulsarClientException
-
internalReceiveAsync
protected java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.Message<T>> internalReceiveAsync()
- Overrides:
internalReceiveAsyncin classConsumerImpl<T>
-
consumerIsReconnectedToBroker
protected void consumerIsReconnectedToBroker(ClientCnx cnx, int currentQueueSize)
- Overrides:
consumerIsReconnectedToBrokerin classConsumerImpl<T>
-
canEnqueueMessage
protected boolean canEnqueueMessage(org.apache.pulsar.client.api.Message<T> message)
- Overrides:
canEnqueueMessagein classConsumerBase<T>
-
tryTriggerListener
protected void tryTriggerListener()
- Overrides:
tryTriggerListenerin classConsumerBase<T>
-
changeToReadyState
protected boolean changeToReadyState()
-
changeToRegisteringSchemaState
protected boolean changeToRegisteringSchemaState()
-
getState
protected org.apache.pulsar.client.impl.HandlerState.State getState()
-
changeToConnecting
protected boolean changeToConnecting()
-
setState
protected void setState(org.apache.pulsar.client.impl.HandlerState.State s)
-
getAndUpdateState
protected org.apache.pulsar.client.impl.HandlerState.State getAndUpdateState(java.util.function.UnaryOperator<org.apache.pulsar.client.impl.HandlerState.State> updater)
-
getClient
public PulsarClientImpl getClient()
-
-