Package org.apache.pulsar.client.impl
Class UnAckedMessageTracker
- java.lang.Object
-
- org.apache.pulsar.client.impl.UnAckedMessageTracker
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
- Direct Known Subclasses:
UnAckedTopicMessageTracker
public class UnAckedMessageTracker extends java.lang.Object implements java.io.Closeable
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.concurrent.ConcurrentHashMap<org.apache.pulsar.client.api.MessageId,org.apache.pulsar.common.util.collections.ConcurrentOpenHashSet<org.apache.pulsar.client.api.MessageId>>messageIdPartitionMapprotected java.util.concurrent.locks.LockreadLockprotected java.util.ArrayDeque<org.apache.pulsar.common.util.collections.ConcurrentOpenHashSet<org.apache.pulsar.client.api.MessageId>>timePartitionsstatic org.apache.pulsar.client.impl.UnAckedMessageTracker.UnAckedMessageTrackerDisabledUNACKED_MESSAGE_TRACKER_DISABLEDprotected java.util.concurrent.locks.LockwriteLock
-
Constructor Summary
Constructors Constructor Description UnAckedMessageTracker()UnAckedMessageTracker(PulsarClientImpl client, ConsumerBase<?> consumerBase, long ackTimeoutMillis)UnAckedMessageTracker(PulsarClientImpl client, ConsumerBase<?> consumerBase, long ackTimeoutMillis, long tickDurationInMs)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadd(org.apache.pulsar.client.api.MessageId messageId)static voidaddChunkedMessageIdsAndRemoveFromSequenceMap(org.apache.pulsar.client.api.MessageId messageId, java.util.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 Detail
-
messageIdPartitionMap
protected final java.util.concurrent.ConcurrentHashMap<org.apache.pulsar.client.api.MessageId,org.apache.pulsar.common.util.collections.ConcurrentOpenHashSet<org.apache.pulsar.client.api.MessageId>> messageIdPartitionMap
-
timePartitions
protected final java.util.ArrayDeque<org.apache.pulsar.common.util.collections.ConcurrentOpenHashSet<org.apache.pulsar.client.api.MessageId>> timePartitions
-
readLock
protected final java.util.concurrent.locks.Lock readLock
-
writeLock
protected final java.util.concurrent.locks.Lock writeLock
-
UNACKED_MESSAGE_TRACKER_DISABLED
public static final org.apache.pulsar.client.impl.UnAckedMessageTracker.UnAckedMessageTrackerDisabled UNACKED_MESSAGE_TRACKER_DISABLED
-
-
Constructor Detail
-
UnAckedMessageTracker
public UnAckedMessageTracker()
-
UnAckedMessageTracker
public UnAckedMessageTracker(PulsarClientImpl client, ConsumerBase<?> consumerBase, long ackTimeoutMillis)
-
UnAckedMessageTracker
public UnAckedMessageTracker(PulsarClientImpl client, ConsumerBase<?> consumerBase, long ackTimeoutMillis, long tickDurationInMs)
-
-
Method Detail
-
addChunkedMessageIdsAndRemoveFromSequenceMap
public static void addChunkedMessageIdsAndRemoveFromSequenceMap(org.apache.pulsar.client.api.MessageId messageId, java.util.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)
-
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 interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable
-
-