Class ReplicatedSubscriptionsController

java.lang.Object
org.apache.pulsar.broker.service.persistent.ReplicatedSubscriptionsController
All Implemented Interfaces:
AutoCloseable, Topic.PublishContext

public class ReplicatedSubscriptionsController extends Object implements AutoCloseable, Topic.PublishContext
Encapsulate all the logic of replicated subscriptions tracking for a given topic.
  • Constructor Details

    • ReplicatedSubscriptionsController

      public ReplicatedSubscriptionsController(PersistentTopic topic, String localCluster)
  • Method Details

    • receivedReplicatedSubscriptionMarker

      public void receivedReplicatedSubscriptionMarker(Position position, int markerType, io.netty.buffer.ByteBuf payload)
    • localSubscriptionUpdated

      public void localSubscriptionUpdated(String subscriptionName, org.apache.pulsar.common.api.proto.ReplicatedSubscriptionsSnapshot snapshot)
    • getLastCompletedSnapshotId

      public Optional<String> getLastCompletedSnapshotId()
    • completed

      public void completed(Exception e, long ledgerId, long entryId)
      From Topic.PublishContext.
      Specified by:
      completed in interface Topic.PublishContext
    • isMarkerMessage

      public boolean isMarkerMessage()
      Specified by:
      isMarkerMessage in interface Topic.PublishContext
    • close

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