Package org.apache.pulsar.client.impl
Class UnAckedMessageTracker
java.lang.Object
org.apache.pulsar.client.impl.UnAckedMessageTracker
- All Implemented Interfaces:
Closeable,AutoCloseable
- Direct Known Subclasses:
UnAckedMessageRedeliveryTracker,UnAckedTopicMessageTracker
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final longprotected final HashMap<org.apache.pulsar.client.api.MessageId,HashSet<org.apache.pulsar.client.api.MessageId>> protected final Lockprotected final longprotected io.netty.util.Timeoutprotected final ArrayDeque<HashSet<org.apache.pulsar.client.api.MessageId>>protected static final io.netty.util.concurrent.FastThreadLocal<HashSet<org.apache.pulsar.client.api.MessageId>>static final org.apache.pulsar.client.impl.UnAckedMessageTracker.UnAckedMessageTrackerDisabledprotected final Lock -
Constructor Summary
ConstructorsConstructorDescriptionUnAckedMessageTracker(PulsarClientImpl client, ConsumerBase<?> consumerBase, ConsumerConfigurationData<?> conf) -
Method Summary
Modifier and TypeMethodDescriptionbooleanadd(org.apache.pulsar.client.api.MessageId messageId) booleanadd(org.apache.pulsar.client.api.MessageId messageId, int redeliveryCount) static voidaddChunkedMessageIdsAndRemoveFromSequenceMap(org.apache.pulsar.client.api.MessageId messageId, Set<org.apache.pulsar.client.api.MessageId> messageIds, ConsumerBase<?> consumerBase) voidclear()voidclose()booleanremove(org.apache.pulsar.client.api.MessageId messageId) intremoveMessagesTill(org.apache.pulsar.client.api.MessageId msgId)
-
Field Details
-
messageIdPartitionMap
-
timePartitions
-
readLock
-
writeLock
-
UNACKED_MESSAGE_TRACKER_DISABLED
public static final org.apache.pulsar.client.impl.UnAckedMessageTracker.UnAckedMessageTrackerDisabled UNACKED_MESSAGE_TRACKER_DISABLED -
ackTimeoutMillis
protected final long ackTimeoutMillis -
tickDurationInMs
protected final long tickDurationInMs -
timeout
protected io.netty.util.Timeout timeout -
TL_MESSAGE_IDS_SET
protected static final io.netty.util.concurrent.FastThreadLocal<HashSet<org.apache.pulsar.client.api.MessageId>> TL_MESSAGE_IDS_SET
-
-
Constructor Details
-
UnAckedMessageTracker
public UnAckedMessageTracker() -
UnAckedMessageTracker
public UnAckedMessageTracker(PulsarClientImpl client, ConsumerBase<?> consumerBase, ConsumerConfigurationData<?> conf)
-
-
Method Details
-
addChunkedMessageIdsAndRemoveFromSequenceMap
public static void addChunkedMessageIdsAndRemoveFromSequenceMap(org.apache.pulsar.client.api.MessageId messageId, Set<org.apache.pulsar.client.api.MessageId> messageIds, ConsumerBase<?> consumerBase) -
clear
public void clear() -
add
public boolean add(org.apache.pulsar.client.api.MessageId messageId) -
add
public boolean add(org.apache.pulsar.client.api.MessageId messageId, int redeliveryCount) -
remove
public boolean remove(org.apache.pulsar.client.api.MessageId messageId) -
removeMessagesTill
public int removeMessagesTill(org.apache.pulsar.client.api.MessageId msgId) -
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-