Class UnAckedMessageTracker

java.lang.Object
org.apache.pulsar.client.impl.UnAckedMessageTracker
All Implemented Interfaces:
Closeable, AutoCloseable
Direct Known Subclasses:
UnAckedMessageRedeliveryTracker, UnAckedTopicMessageTracker

public class UnAckedMessageTracker extends Object implements Closeable
  • Field Details

    • messageIdPartitionMap

      protected final HashMap<MessageId,HashSet<MessageId>> messageIdPartitionMap
    • timePartitions

      protected final ArrayDeque<HashSet<MessageId>> timePartitions
    • readLock

      protected final Lock readLock
    • writeLock

      protected final Lock 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<MessageId>> TL_MESSAGE_IDS_SET
  • Constructor Details

  • Method Details

    • addChunkedMessageIdsAndRemoveFromSequenceMap

      public static void addChunkedMessageIdsAndRemoveFromSequenceMap(MessageId messageId, Set<MessageId> messageIds, ConsumerBase<?> consumerBase)
    • clear

      public void clear()
    • add

      public boolean add(MessageId messageId)
    • add

      public boolean add(MessageId messageId, int redeliveryCount)
    • remove

      public boolean remove(MessageId messageId)
    • removeMessagesTill

      public int removeMessagesTill(MessageId msgId)
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable