Interface Topics


  • public interface Topics
    Admin interface for Topics management.
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods 
      Modifier and Type Method Description
      LongRunningProcessStatus compactionStatus​(java.lang.String topic)
      Check the status of an ongoing compaction for a topic.
      java.util.concurrent.CompletableFuture<LongRunningProcessStatus> compactionStatusAsync​(java.lang.String topic)
      Check the status of an ongoing compaction for a topic asynchronously.
      void createMissedPartitions​(java.lang.String topic)
      Create missed partitions for partitioned topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> createMissedPartitionsAsync​(java.lang.String topic)
      Create missed partitions for partitioned topic asynchronously.
      void createNonPartitionedTopic​(java.lang.String topic)
      Create a non-partitioned topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> createNonPartitionedTopicAsync​(java.lang.String topic)
      Create a non-partitioned topic asynchronously.
      void createPartitionedTopic​(java.lang.String topic, int numPartitions)
      Create a partitioned topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> createPartitionedTopicAsync​(java.lang.String topic, int numPartitions)
      Create a partitioned topic asynchronously.
      void createSubscription​(java.lang.String topic, java.lang.String subscriptionName, org.apache.pulsar.client.api.MessageId messageId)
      Create a new subscription on a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> createSubscriptionAsync​(java.lang.String topic, java.lang.String subscriptionName, org.apache.pulsar.client.api.MessageId messageId)
      Create a new subscription on a topic.
      void delete​(java.lang.String topic)
      Delete a topic.
      default void delete​(java.lang.String topic, boolean force)  
      void delete​(java.lang.String topic, boolean force, boolean deleteSchema)
      Delete a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> deleteAsync​(java.lang.String topic)
      Delete a topic asynchronously.
      default java.util.concurrent.CompletableFuture<java.lang.Void> deleteAsync​(java.lang.String topic, boolean force)  
      java.util.concurrent.CompletableFuture<java.lang.Void> deleteAsync​(java.lang.String topic, boolean force, boolean deleteSchema)
      Delete a topic asynchronously.
      void deletePartitionedTopic​(java.lang.String topic)
      Delete a partitioned topic.
      default void deletePartitionedTopic​(java.lang.String topic, boolean force)  
      void deletePartitionedTopic​(java.lang.String topic, boolean force, boolean deleteSchema)
      Delete a partitioned topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> deletePartitionedTopicAsync​(java.lang.String topic)
      Delete a partitioned topic asynchronously.
      default java.util.concurrent.CompletableFuture<java.lang.Void> deletePartitionedTopicAsync​(java.lang.String topic, boolean force)  
      java.util.concurrent.CompletableFuture<java.lang.Void> deletePartitionedTopicAsync​(java.lang.String topic, boolean force, boolean deleteSchema)
      Delete a partitioned topic asynchronously.
      void deleteSubscription​(java.lang.String topic, java.lang.String subName)
      Delete a subscription.
      void deleteSubscription​(java.lang.String topic, java.lang.String subName, boolean force)
      Delete a subscription.
      java.util.concurrent.CompletableFuture<java.lang.Void> deleteSubscriptionAsync​(java.lang.String topic, java.lang.String subName)
      Delete a subscription asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Void> deleteSubscriptionAsync​(java.lang.String topic, java.lang.String subName, boolean force)
      Delete a subscription asynchronously.
      void disableDeduplication​(java.lang.String topic)
      Deprecated.
      java.util.concurrent.CompletableFuture<java.lang.Void> disableDeduplicationAsync​(java.lang.String topic)
      Deprecated.
      void enableDeduplication​(java.lang.String topic, boolean enabled)
      Deprecated.
      java.util.concurrent.CompletableFuture<java.lang.Void> enableDeduplicationAsync​(java.lang.String topic, boolean enabled)
      Deprecated.
      org.apache.pulsar.client.api.Message<byte[]> examineMessage​(java.lang.String topic, java.lang.String initialPosition, long messagePosition)
      Examine a specific message on a topic by position relative to the earliest or the latest message.
      java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.Message<byte[]>> examineMessageAsync​(java.lang.String topic, java.lang.String initialPosition, long messagePosition)
      Examine a specific message on a topic by position relative to the earliest or the latest message.
      void expireMessages​(java.lang.String topic, java.lang.String subscriptionName, long expireTimeInSeconds)
      Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription.
      void expireMessages​(java.lang.String topic, java.lang.String subscriptionName, org.apache.pulsar.client.api.MessageId messageId, boolean isExcluded)
      Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription.
      java.util.concurrent.CompletableFuture<java.lang.Void> expireMessagesAsync​(java.lang.String topic, java.lang.String subscriptionName, long expireTimeInSeconds)
      Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Void> expireMessagesAsync​(java.lang.String topic, java.lang.String subscriptionName, org.apache.pulsar.client.api.MessageId messageId, boolean isExcluded)
      Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription asynchronously.
      void expireMessagesForAllSubscriptions​(java.lang.String topic, long expireTimeInSeconds)
      Expire all messages older than given N seconds for all subscriptions of the persistent-topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> expireMessagesForAllSubscriptionsAsync​(java.lang.String topic, long expireTimeInSeconds)
      Expire all messages older than given N seconds for all subscriptions of the persistent-topic asynchronously.
      java.util.Map<BacklogQuota.BacklogQuotaType,​BacklogQuota> getBacklogQuotaMap​(java.lang.String topic)
      Get backlog quota map for a topic.
      java.util.Map<BacklogQuota.BacklogQuotaType,​BacklogQuota> getBacklogQuotaMap​(java.lang.String topic, boolean applied)
      Get applied backlog quota map for a topic.
      java.lang.Long getCompactionThreshold​(java.lang.String topic)
      Get the compactionThreshold for a topic.
      java.lang.Long getCompactionThreshold​(java.lang.String topic, boolean applied)
      Get the compactionThreshold for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Long> getCompactionThresholdAsync​(java.lang.String topic)
      Get the compactionThreshold for a topic asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Long> getCompactionThresholdAsync​(java.lang.String topic, boolean applied)
      Get the compactionThreshold for a topic asynchronously.
      java.lang.Boolean getDeduplicationEnabled​(java.lang.String topic)
      Deprecated.
      java.util.concurrent.CompletableFuture<java.lang.Boolean> getDeduplicationEnabledAsync​(java.lang.String topic)
      Deprecated.
      java.lang.Integer getDeduplicationSnapshotInterval​(java.lang.String topic)
      Get the deduplication snapshot interval for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getDeduplicationSnapshotIntervalAsync​(java.lang.String topic)
      Get the deduplication snapshot interval for specified topic asynchronously.
      java.lang.Boolean getDeduplicationStatus​(java.lang.String topic)
      get deduplication enabled of a topic.
      java.lang.Boolean getDeduplicationStatus​(java.lang.String topic, boolean applied)
      get applied deduplication enabled of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Boolean> getDeduplicationStatusAsync​(java.lang.String topic)
      get deduplication enabled of a topic asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Boolean> getDeduplicationStatusAsync​(java.lang.String topic, boolean applied)
      get applied deduplication enabled of a topic asynchronously.
      DelayedDeliveryPolicies getDelayedDeliveryPolicy​(java.lang.String topic)
      Get the delayed delivery policy for a specified topic.
      DelayedDeliveryPolicies getDelayedDeliveryPolicy​(java.lang.String topic, boolean applied)
      Get the delayed delivery policy applied for a specified topic.
      java.util.concurrent.CompletableFuture<DelayedDeliveryPolicies> getDelayedDeliveryPolicyAsync​(java.lang.String topic)
      Get the delayed delivery policy for a specified topic asynchronously.
      java.util.concurrent.CompletableFuture<DelayedDeliveryPolicies> getDelayedDeliveryPolicyAsync​(java.lang.String topic, boolean applied)
      Get the delayed delivery policy applied for a specified topic asynchronously.
      DispatchRate getDispatchRate​(java.lang.String topic)
      Get message-dispatch-rate (topic can dispatch this many messages per second).
      DispatchRate getDispatchRate​(java.lang.String topic, boolean applied)
      Get applied message-dispatch-rate (topic can dispatch this many messages per second).
      java.util.concurrent.CompletableFuture<DispatchRate> getDispatchRateAsync​(java.lang.String topic)
      Get message-dispatch-rate asynchronously.
      java.util.concurrent.CompletableFuture<DispatchRate> getDispatchRateAsync​(java.lang.String topic, boolean applied)
      Get applied message-dispatch-rate asynchronously.
      InactiveTopicPolicies getInactiveTopicPolicies​(java.lang.String topic)
      get inactive topic policies of a topic.
      InactiveTopicPolicies getInactiveTopicPolicies​(java.lang.String topic, boolean applied)
      Get inactive topic policies applied for a topic.
      java.util.concurrent.CompletableFuture<InactiveTopicPolicies> getInactiveTopicPoliciesAsync​(java.lang.String topic)
      get inactive topic policies of a topic asynchronously.
      java.util.concurrent.CompletableFuture<InactiveTopicPolicies> getInactiveTopicPoliciesAsync​(java.lang.String topic, boolean applied)
      Get inactive topic policies applied for a topic asynchronously.
      java.lang.String getInternalInfo​(java.lang.String topic)
      Get a JSON representation of the topic metadata stored in ZooKeeper.
      java.util.concurrent.CompletableFuture<java.lang.String> getInternalInfoAsync​(java.lang.String topic)
      Get a JSON representation of the topic metadata stored in ZooKeeper.
      PersistentTopicInternalStats getInternalStats​(java.lang.String topic)
      Get the internal stats for the topic.
      PersistentTopicInternalStats getInternalStats​(java.lang.String topic, boolean metadata)
      Get the internal stats for the topic.
      java.util.concurrent.CompletableFuture<PersistentTopicInternalStats> getInternalStatsAsync​(java.lang.String topic)
      Get the internal stats for the topic asynchronously.
      java.util.concurrent.CompletableFuture<PersistentTopicInternalStats> getInternalStatsAsync​(java.lang.String topic, boolean metadata)
      Get the internal stats for the topic asynchronously.
      org.apache.pulsar.client.api.MessageId getLastMessageId​(java.lang.String topic)
      Get the last commit message Id of a topic.
      java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.MessageId> getLastMessageIdAsync​(java.lang.String topic)
      Get the last commit message Id of a topic asynchronously.
      java.util.List<java.lang.String> getList​(java.lang.String namespace)
      Get the both persistent and non-persistent topics under a namespace.
      java.util.List<java.lang.String> getList​(java.lang.String namespace, TopicDomain topicDomain)
      Get the list of topics under a namespace.
      java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getListAsync​(java.lang.String namespace)
      Get both persistent and non-persistent topics under a namespace asynchronously.
      java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getListAsync​(java.lang.String namespace, TopicDomain topicDomain)
      Get the list of topics under a namespace asynchronously.
      java.util.List<java.lang.String> getListInBundle​(java.lang.String namespace, java.lang.String bundleRange)
      Get list of topics exist into given bundle.
      java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getListInBundleAsync​(java.lang.String namespace, java.lang.String bundleRange)
      Get list of topics exist into given bundle asynchronously.
      java.lang.Integer getMaxConsumers​(java.lang.String topic)
      Get the max number of consumer for specified topic.
      java.lang.Integer getMaxConsumers​(java.lang.String topic, boolean applied)
      Get the max number of consumer applied for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxConsumersAsync​(java.lang.String topic)
      Get the max number of consumer for specified topic asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxConsumersAsync​(java.lang.String topic, boolean applied)
      Get the max number of consumer applied for specified topic asynchronously.
      java.lang.Integer getMaxConsumersPerSubscription​(java.lang.String topic)
      Get the maxConsumersPerSubscription for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxConsumersPerSubscriptionAsync​(java.lang.String topic)
      Get the maxConsumersPerSubscription for a topic asynchronously.
      java.lang.Integer getMaxMessageSize​(java.lang.String topic)
      Get the max message size for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxMessageSizeAsync​(java.lang.String topic)
      Get the max message size for specified topic asynchronously.
      java.lang.Integer getMaxProducers​(java.lang.String topic)
      Get the max number of producer for specified topic.
      java.lang.Integer getMaxProducers​(java.lang.String topic, boolean applied)
      Get the max number of producer applied for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxProducersAsync​(java.lang.String topic)
      Get the max number of producer for specified topic asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxProducersAsync​(java.lang.String topic, boolean applied)
      Get the max number of producer applied for specified topic asynchronously.
      java.lang.Integer getMaxSubscriptionsPerTopic​(java.lang.String topic)
      Get the max number of subscriptions for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxSubscriptionsPerTopicAsync​(java.lang.String topic)
      Get the max number of subscriptions for specified topic asynchronously.
      java.lang.Integer getMaxUnackedMessagesOnConsumer​(java.lang.String topic)
      get max unacked messages on consumer of a topic.
      java.lang.Integer getMaxUnackedMessagesOnConsumer​(java.lang.String topic, boolean applied)
      get applied max unacked messages on consumer of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxUnackedMessagesOnConsumerAsync​(java.lang.String topic)
      get max unacked messages on consumer of a topic asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxUnackedMessagesOnConsumerAsync​(java.lang.String topic, boolean applied)
      get applied max unacked messages on consumer of a topic asynchronously.
      java.lang.Integer getMaxUnackedMessagesOnSubscription​(java.lang.String topic)
      get max unacked messages on subscription of a topic.
      java.lang.Integer getMaxUnackedMessagesOnSubscription​(java.lang.String topic, boolean applied)
      get max unacked messages on subscription of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxUnackedMessagesOnSubscriptionAsync​(java.lang.String topic)
      get max unacked messages on subscription of a topic asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxUnackedMessagesOnSubscriptionAsync​(java.lang.String topic, boolean applied)
      get max unacked messages on subscription of a topic asynchronously.
      org.apache.pulsar.client.api.Message<byte[]> getMessageById​(java.lang.String topic, long ledgerId, long entryId)
      Get a message by its messageId via a topic subscription.
      java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.Message<byte[]>> getMessageByIdAsync​(java.lang.String topic, long ledgerId, long entryId)
      Get a message by its messageId via a topic subscription asynchronously.
      java.lang.Integer getMessageTTL​(java.lang.String topic)
      Get message TTL for a topic.
      java.lang.Integer getMessageTTL​(java.lang.String topic, boolean applied)
      Get message TTL applied for a topic.
      OffloadPolicies getOffloadPolicies​(java.lang.String topic)
      get offload policies of a topic.
      OffloadPolicies getOffloadPolicies​(java.lang.String topic, boolean applied)
      get applied offload policies of a topic.
      java.util.concurrent.CompletableFuture<OffloadPolicies> getOffloadPoliciesAsync​(java.lang.String topic)
      get offload policies of a topic asynchronously.
      java.util.concurrent.CompletableFuture<OffloadPolicies> getOffloadPoliciesAsync​(java.lang.String topic, boolean applied)
      get applied offload policies of a topic asynchronously.
      PartitionedTopicInternalStats getPartitionedInternalStats​(java.lang.String topic)
      Get the stats for the partitioned topic.
      java.util.concurrent.CompletableFuture<PartitionedTopicInternalStats> getPartitionedInternalStatsAsync​(java.lang.String topic)
      Get the stats-internal for the partitioned topic asynchronously.
      default PartitionedTopicStats getPartitionedStats​(java.lang.String topic, boolean perPartition)  
      PartitionedTopicStats getPartitionedStats​(java.lang.String topic, boolean perPartition, boolean getPreciseBacklog, boolean subscriptionBacklogSize)
      Get the stats for the partitioned topic
      default java.util.concurrent.CompletableFuture<PartitionedTopicStats> getPartitionedStatsAsync​(java.lang.String topic, boolean perPartition)  
      java.util.concurrent.CompletableFuture<PartitionedTopicStats> getPartitionedStatsAsync​(java.lang.String topic, boolean perPartition, boolean getPreciseBacklog, boolean subscriptionBacklogSize)
      Get the stats for the partitioned topic asynchronously.
      java.util.List<java.lang.String> getPartitionedTopicList​(java.lang.String namespace)
      Get the list of partitioned topics under a namespace.
      java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getPartitionedTopicListAsync​(java.lang.String namespace)
      Get the list of partitioned topics under a namespace asynchronously.
      PartitionedTopicMetadata getPartitionedTopicMetadata​(java.lang.String topic)
      Get metadata of a partitioned topic.
      java.util.concurrent.CompletableFuture<PartitionedTopicMetadata> getPartitionedTopicMetadataAsync​(java.lang.String topic)
      Get metadata of a partitioned topic asynchronously.
      java.util.Map<java.lang.String,​java.util.Set<AuthAction>> getPermissions​(java.lang.String topic)
      Get permissions on a topic.
      java.util.concurrent.CompletableFuture<java.util.Map<java.lang.String,​java.util.Set<AuthAction>>> getPermissionsAsync​(java.lang.String topic)
      Get permissions on a topic asynchronously.
      PersistencePolicies getPersistence​(java.lang.String topic)
      Get the configuration of persistence policies for specified topic.
      PersistencePolicies getPersistence​(java.lang.String topic, boolean applied)
      Get the applied configuration of persistence policies for specified topic.
      java.util.concurrent.CompletableFuture<PersistencePolicies> getPersistenceAsync​(java.lang.String topic)
      Get the configuration of persistence policies for specified topic asynchronously.
      java.util.concurrent.CompletableFuture<PersistencePolicies> getPersistenceAsync​(java.lang.String topic, boolean applied)
      Get the applied configuration of persistence policies for specified topic asynchronously.
      PublishRate getPublishRate​(java.lang.String topic)
      Get message-publish-rate (topics can publish this many messages per second).
      java.util.concurrent.CompletableFuture<PublishRate> getPublishRateAsync​(java.lang.String topic)
      Get message-publish-rate (topics can publish this many messages per second) asynchronously.
      DispatchRate getReplicatorDispatchRate​(java.lang.String topic)
      Get replicatorDispatchRate for the topic.
      DispatchRate getReplicatorDispatchRate​(java.lang.String topic, boolean applied)
      Get applied replicatorDispatchRate for the topic.
      java.util.concurrent.CompletableFuture<DispatchRate> getReplicatorDispatchRateAsync​(java.lang.String topic)
      Get replicatorDispatchRate asynchronously.
      java.util.concurrent.CompletableFuture<DispatchRate> getReplicatorDispatchRateAsync​(java.lang.String topic, boolean applied)
      Get applied replicatorDispatchRate asynchronously.
      RetentionPolicies getRetention​(java.lang.String topic)
      Get the retention configuration for a topic.
      RetentionPolicies getRetention​(java.lang.String topic, boolean applied)
      Get the applied retention configuration for a topic.
      java.util.concurrent.CompletableFuture<RetentionPolicies> getRetentionAsync​(java.lang.String topic)
      Get the retention configuration for a topic asynchronously.
      java.util.concurrent.CompletableFuture<RetentionPolicies> getRetentionAsync​(java.lang.String topic, boolean applied)
      Get the applied retention configuration for a topic asynchronously.
      default TopicStats getStats​(java.lang.String topic)  
      default TopicStats getStats​(java.lang.String topic, boolean getPreciseBacklog)  
      TopicStats getStats​(java.lang.String topic, boolean getPreciseBacklog, boolean subscriptionBacklogSize)
      Get the stats for the topic.
      default java.util.concurrent.CompletableFuture<TopicStats> getStatsAsync​(java.lang.String topic)  
      java.util.concurrent.CompletableFuture<TopicStats> getStatsAsync​(java.lang.String topic, boolean getPreciseBacklog, boolean subscriptionBacklogSize)
      Get the stats for the topic asynchronously.
      SubscribeRate getSubscribeRate​(java.lang.String topic)
      Get topic-subscribe-rate (topics allow subscribe times per consumer in a period).
      SubscribeRate getSubscribeRate​(java.lang.String topic, boolean applied)
      Get applied topic-subscribe-rate (topics allow subscribe times per consumer in a period).
      java.util.concurrent.CompletableFuture<SubscribeRate> getSubscribeRateAsync​(java.lang.String topic)
      Get topic-subscribe-rate asynchronously.
      java.util.concurrent.CompletableFuture<SubscribeRate> getSubscribeRateAsync​(java.lang.String topic, boolean applied)
      Get applied topic-subscribe-rate asynchronously.
      DispatchRate getSubscriptionDispatchRate​(java.lang.String topic)
      Get subscription-message-dispatch-rate for the topic.
      DispatchRate getSubscriptionDispatchRate​(java.lang.String namespace, boolean applied)
      Get applied subscription-message-dispatch-rate.
      java.util.concurrent.CompletableFuture<DispatchRate> getSubscriptionDispatchRateAsync​(java.lang.String topic)
      Get subscription-message-dispatch-rate asynchronously.
      java.util.concurrent.CompletableFuture<DispatchRate> getSubscriptionDispatchRateAsync​(java.lang.String namespace, boolean applied)
      Get applied subscription-message-dispatch-rate asynchronously.
      java.util.List<java.lang.String> getSubscriptions​(java.lang.String topic)
      Get the list of subscriptions.
      java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getSubscriptionsAsync​(java.lang.String topic)
      Get the list of subscriptions asynchronously.
      java.util.Set<org.apache.pulsar.client.api.SubscriptionType> getSubscriptionTypesEnabled​(java.lang.String topic)
      Get is enable sub types.
      java.util.concurrent.CompletableFuture<java.util.Set<org.apache.pulsar.client.api.SubscriptionType>> getSubscriptionTypesEnabledAsync​(java.lang.String topic)
      Get is enable sub types asynchronously.
      void grantPermission​(java.lang.String topic, java.lang.String role, java.util.Set<AuthAction> actions)
      Grant permission on a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> grantPermissionAsync​(java.lang.String topic, java.lang.String role, java.util.Set<AuthAction> actions)
      Grant permission on a topic asynchronously.
      OffloadProcessStatus offloadStatus​(java.lang.String topic)
      Check the status of an ongoing offloading operation for a topic.
      java.util.concurrent.CompletableFuture<OffloadProcessStatus> offloadStatusAsync​(java.lang.String topic)
      Check the status of an ongoing offloading operation for a topic asynchronously.
      java.util.List<org.apache.pulsar.client.api.Message<byte[]>> peekMessages​(java.lang.String topic, java.lang.String subName, int numMessages)
      Peek messages from a topic subscription.
      java.util.concurrent.CompletableFuture<java.util.List<org.apache.pulsar.client.api.Message<byte[]>>> peekMessagesAsync​(java.lang.String topic, java.lang.String subName, int numMessages)
      Peek messages from a topic subscription asynchronously.
      void removeBacklogQuota​(java.lang.String topic)
      Remove a backlog quota policy from a topic.
      void removeCompactionThreshold​(java.lang.String topic)
      Remove the compactionThreshold for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeCompactionThresholdAsync​(java.lang.String topic)
      Remove the compactionThreshold for a topic asynchronously.
      void removeDeduplicationSnapshotInterval​(java.lang.String topic)
      Remove the deduplication snapshot interval for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeDeduplicationSnapshotIntervalAsync​(java.lang.String topic)
      Remove the deduplication snapshot interval for specified topic asynchronously.
      void removeDeduplicationStatus​(java.lang.String topic)
      remove deduplication enabled of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeDeduplicationStatusAsync​(java.lang.String topic)
      remove deduplication enabled of a topic asynchronously.
      void removeDelayedDeliveryPolicy​(java.lang.String topic)
      Remove the delayed delivery policy for a specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeDelayedDeliveryPolicyAsync​(java.lang.String topic)
      Remove the delayed delivery policy for a specified topic asynchronously.
      void removeDispatchRate​(java.lang.String topic)
      Remove message-dispatch-rate.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeDispatchRateAsync​(java.lang.String topic)
      Remove message-dispatch-rate asynchronously.
      void removeInactiveTopicPolicies​(java.lang.String topic)
      remove inactive topic policies of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeInactiveTopicPoliciesAsync​(java.lang.String topic)
      remove inactive topic policies of a topic asynchronously.
      void removeMaxConsumers​(java.lang.String topic)
      Remove the max number of consumer for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxConsumersAsync​(java.lang.String topic)
      Remove the max number of consumer for specified topic asynchronously.
      void removeMaxConsumersPerSubscription​(java.lang.String topic)
      Remove the maxConsumersPerSubscription for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxConsumersPerSubscriptionAsync​(java.lang.String topic)
      Remove the maxConsumersPerSubscription for a topic asynchronously.
      void removeMaxMessageSize​(java.lang.String topic)
      Remove the max message size for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxMessageSizeAsync​(java.lang.String topic)
      Remove the max message size for specified topic asynchronously.
      void removeMaxProducers​(java.lang.String topic)
      Remove the max number of producer for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxProducersAsync​(java.lang.String topic)
      Remove the max number of producer for specified topic asynchronously.
      void removeMaxSubscriptionsPerTopic​(java.lang.String topic)
      Remove the max number of subscriptions for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxSubscriptionsPerTopicAsync​(java.lang.String topic)
      Remove the max number of subscriptions for specified topic asynchronously.
      void removeMaxUnackedMessagesOnConsumer​(java.lang.String topic)
      remove max unacked messages on consumer of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxUnackedMessagesOnConsumerAsync​(java.lang.String topic)
      remove max unacked messages on consumer of a topic asynchronously.
      void removeMaxUnackedMessagesOnSubscription​(java.lang.String topic)
      remove max unacked messages on subscription of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxUnackedMessagesOnSubscriptionAsync​(java.lang.String topic)
      remove max unacked messages on subscription of a topic asynchronously.
      void removeMessageTTL​(java.lang.String topic)
      Remove message TTL for a topic.
      void removeOffloadPolicies​(java.lang.String topic)
      remove offload policies of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeOffloadPoliciesAsync​(java.lang.String topic)
      remove offload policies of a topic asynchronously.
      void removePersistence​(java.lang.String topic)
      Remove the configuration of persistence policies for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removePersistenceAsync​(java.lang.String topic)
      Remove the configuration of persistence policies for specified topic asynchronously.
      void removePublishRate​(java.lang.String topic)
      Remove message-publish-rate.
      java.util.concurrent.CompletableFuture<java.lang.Void> removePublishRateAsync​(java.lang.String topic)
      Remove message-publish-rate asynchronously.
      void removeReplicatorDispatchRate​(java.lang.String topic)
      Remove replicatorDispatchRate for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeReplicatorDispatchRateAsync​(java.lang.String topic)
      Remove replicatorDispatchRate for a topic asynchronously.
      void removeRetention​(java.lang.String topic)
      Remove the retention configuration for all the topics on a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeRetentionAsync​(java.lang.String topic)
      Remove the retention configuration for all the topics on a topic asynchronously.
      void removeSubscribeRate​(java.lang.String topic)
      Remove topic-subscribe-rate.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeSubscribeRateAsync​(java.lang.String topic)
      Remove topic-subscribe-rate asynchronously.
      void removeSubscriptionDispatchRate​(java.lang.String topic)
      Remove subscription-message-dispatch-rate for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> removeSubscriptionDispatchRateAsync​(java.lang.String topic)
      Remove subscription-message-dispatch-rate for a topic asynchronously.
      void resetCursor​(java.lang.String topic, java.lang.String subName, long timestamp)
      Reset cursor position on a topic subscription.
      void resetCursor​(java.lang.String topic, java.lang.String subName, org.apache.pulsar.client.api.MessageId messageId)
      Reset cursor position on a topic subscription.
      void resetCursor​(java.lang.String topic, java.lang.String subName, org.apache.pulsar.client.api.MessageId messageId, boolean isExcluded)
      Reset cursor position on a topic subscription.
      java.util.concurrent.CompletableFuture<java.lang.Void> resetCursorAsync​(java.lang.String topic, java.lang.String subName, long timestamp)
      Reset cursor position on a topic subscription.
      java.util.concurrent.CompletableFuture<java.lang.Void> resetCursorAsync​(java.lang.String topic, java.lang.String subName, org.apache.pulsar.client.api.MessageId messageId)
      Reset cursor position on a topic subscription.
      java.util.concurrent.CompletableFuture<java.lang.Void> resetCursorAsync​(java.lang.String topic, java.lang.String subName, org.apache.pulsar.client.api.MessageId messageId, boolean isExcluded)
      Reset cursor position on a topic subscription.
      void revokePermissions​(java.lang.String topic, java.lang.String role)
      Revoke permissions on a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> revokePermissionsAsync​(java.lang.String topic, java.lang.String role)
      Revoke permissions on a topic asynchronously.
      void setBacklogQuota​(java.lang.String topic, BacklogQuota backlogQuota)
      Set a backlog quota for a topic.
      void setCompactionThreshold​(java.lang.String topic, long compactionThreshold)
      Set the compactionThreshold for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setCompactionThresholdAsync​(java.lang.String topic, long compactionThreshold)
      Set the compactionThreshold for a topic asynchronously.
      void setDeduplicationSnapshotInterval​(java.lang.String topic, int interval)
      Set the deduplication snapshot interval for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setDeduplicationSnapshotIntervalAsync​(java.lang.String topic, int interval)
      Set the deduplication snapshot interval for specified topic asynchronously.
      void setDeduplicationStatus​(java.lang.String topic, boolean enabled)
      set deduplication enabled of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setDeduplicationStatusAsync​(java.lang.String topic, boolean enabled)
      set deduplication enabled of a topic asynchronously.
      void setDelayedDeliveryPolicy​(java.lang.String topic, DelayedDeliveryPolicies delayedDeliveryPolicies)
      Set the delayed delivery policy for a specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setDelayedDeliveryPolicyAsync​(java.lang.String topic, DelayedDeliveryPolicies delayedDeliveryPolicies)
      Set the delayed delivery policy for a specified topic asynchronously.
      void setDispatchRate​(java.lang.String topic, DispatchRate dispatchRate)
      Set message-dispatch-rate (topic can dispatch this many messages per second).
      java.util.concurrent.CompletableFuture<java.lang.Void> setDispatchRateAsync​(java.lang.String topic, DispatchRate dispatchRate)
      Set message-dispatch-rate asynchronously.
      void setInactiveTopicPolicies​(java.lang.String topic, InactiveTopicPolicies inactiveTopicPolicies)
      set inactive topic policies of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setInactiveTopicPoliciesAsync​(java.lang.String topic, InactiveTopicPolicies inactiveTopicPolicies)
      set inactive topic policies of a topic asynchronously.
      void setMaxConsumers​(java.lang.String topic, int maxConsumers)
      Set the max number of consumer for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setMaxConsumersAsync​(java.lang.String topic, int maxConsumers)
      Set the max number of consumer for specified topic asynchronously.
      void setMaxConsumersPerSubscription​(java.lang.String topic, int maxConsumersPerSubscription)
      Set maxConsumersPerSubscription for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setMaxConsumersPerSubscriptionAsync​(java.lang.String topic, int maxConsumersPerSubscription)
      Set maxConsumersPerSubscription for a topic asynchronously.
      void setMaxMessageSize​(java.lang.String topic, int maxMessageSize)
      Set the max message size for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setMaxMessageSizeAsync​(java.lang.String topic, int maxMessageSize)
      Set the max message size for specified topic asynchronously.0 disables.
      void setMaxProducers​(java.lang.String topic, int maxProducers)
      Set the max number of producer for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setMaxProducersAsync​(java.lang.String topic, int maxProducers)
      Set the max number of producer for specified topic asynchronously.
      void setMaxSubscriptionsPerTopic​(java.lang.String topic, int maxSubscriptionsPerTopic)
      Set the max number of subscriptions for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setMaxSubscriptionsPerTopicAsync​(java.lang.String topic, int maxSubscriptionsPerTopic)
      Set the max number of subscriptions for specified topic asynchronously.
      void setMaxUnackedMessagesOnConsumer​(java.lang.String topic, int maxNum)
      set max unacked messages on consumer of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setMaxUnackedMessagesOnConsumerAsync​(java.lang.String topic, int maxNum)
      set max unacked messages on consumer of a topic asynchronously.
      void setMaxUnackedMessagesOnSubscription​(java.lang.String topic, int maxNum)
      set max unacked messages on subscription of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setMaxUnackedMessagesOnSubscriptionAsync​(java.lang.String topic, int maxNum)
      set max unacked messages on subscription of a topic asynchronously.
      void setMessageTTL​(java.lang.String topic, int messageTTLInSecond)
      Set message TTL for a topic.
      void setOffloadPolicies​(java.lang.String topic, OffloadPolicies offloadPolicies)
      set offload policies of a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setOffloadPoliciesAsync​(java.lang.String topic, OffloadPolicies offloadPolicies)
      set offload policies of a topic asynchronously.
      void setPersistence​(java.lang.String topic, PersistencePolicies persistencePolicies)
      Set the configuration of persistence policies for specified topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setPersistenceAsync​(java.lang.String topic, PersistencePolicies persistencePolicies)
      Set the configuration of persistence policies for specified topic asynchronously.
      void setPublishRate​(java.lang.String topic, PublishRate publishMsgRate)
      Set message-publish-rate (topics can publish this many messages per second).
      java.util.concurrent.CompletableFuture<java.lang.Void> setPublishRateAsync​(java.lang.String topic, PublishRate publishMsgRate)
      Set message-publish-rate (topics can publish this many messages per second) asynchronously.
      void setReplicatorDispatchRate​(java.lang.String topic, DispatchRate dispatchRate)
      Set replicatorDispatchRate for the topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setReplicatorDispatchRateAsync​(java.lang.String topic, DispatchRate dispatchRate)
      Set replicatorDispatchRate for the topic asynchronously.
      void setRetention​(java.lang.String topic, RetentionPolicies retention)
      Set the retention configuration on a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setRetentionAsync​(java.lang.String topic, RetentionPolicies retention)
      Set the retention configuration for all the topics on a topic asynchronously.
      void setSubscribeRate​(java.lang.String topic, SubscribeRate subscribeRate)
      Set topic-subscribe-rate (topic will limit by subscribeRate).
      java.util.concurrent.CompletableFuture<java.lang.Void> setSubscribeRateAsync​(java.lang.String topic, SubscribeRate subscribeRate)
      Set topic-subscribe-rate (topics will limit by subscribeRate) asynchronously.
      void setSubscriptionDispatchRate​(java.lang.String topic, DispatchRate dispatchRate)
      Set subscription-message-dispatch-rate for the topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> setSubscriptionDispatchRateAsync​(java.lang.String topic, DispatchRate dispatchRate)
      Set subscription-message-dispatch-rate for the topic asynchronously.
      void setSubscriptionTypesEnabled​(java.lang.String topic, java.util.Set<org.apache.pulsar.client.api.SubscriptionType> subscriptionTypesEnabled)
      Set is enable sub types.
      java.util.concurrent.CompletableFuture<java.lang.Void> setSubscriptionTypesEnabledAsync​(java.lang.String topic, java.util.Set<org.apache.pulsar.client.api.SubscriptionType> subscriptionTypesEnabled)
      Set is enable sub types asynchronously.
      void skipAllMessages​(java.lang.String topic, java.lang.String subName)
      Skip all messages on a topic subscription.
      java.util.concurrent.CompletableFuture<java.lang.Void> skipAllMessagesAsync​(java.lang.String topic, java.lang.String subName)
      Skip all messages on a topic subscription asynchronously.
      void skipMessages​(java.lang.String topic, java.lang.String subName, long numMessages)
      Skip messages on a topic subscription.
      java.util.concurrent.CompletableFuture<java.lang.Void> skipMessagesAsync​(java.lang.String topic, java.lang.String subName, long numMessages)
      Skip messages on a topic subscription asynchronously.
      org.apache.pulsar.client.api.MessageId terminateTopic​(java.lang.String topic)
      Terminate the topic and prevent any more messages being published on it.
      java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.MessageId> terminateTopicAsync​(java.lang.String topic)
      Terminate the topic and prevent any more messages being published on it.
      void triggerCompaction​(java.lang.String topic)
      Trigger compaction to run for a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> triggerCompactionAsync​(java.lang.String topic)
      Trigger compaction to run for a topic asynchronously.
      void triggerOffload​(java.lang.String topic, org.apache.pulsar.client.api.MessageId messageId)
      Trigger offloading messages in topic to longterm storage.
      java.util.concurrent.CompletableFuture<java.lang.Void> triggerOffloadAsync​(java.lang.String topic, org.apache.pulsar.client.api.MessageId messageId)
      Trigger offloading messages in topic to longterm storage asynchronously.
      void truncate​(java.lang.String topic)
      Truncate a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> truncateAsync​(java.lang.String topic)
      Truncate a topic asynchronously.
      void unload​(java.lang.String topic)
      Unload a topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> unloadAsync​(java.lang.String topic)
      Unload a topic asynchronously.
      void updatePartitionedTopic​(java.lang.String topic, int numPartitions)
      Update number of partitions of a non-global partitioned topic.
      void updatePartitionedTopic​(java.lang.String topic, int numPartitions, boolean updateLocalTopicOnly)
      Update number of partitions of a non-global partitioned topic.
      java.util.concurrent.CompletableFuture<java.lang.Void> updatePartitionedTopicAsync​(java.lang.String topic, int numPartitions)
      Update number of partitions of a non-global partitioned topic asynchronously.
      java.util.concurrent.CompletableFuture<java.lang.Void> updatePartitionedTopicAsync​(java.lang.String topic, int numPartitions, boolean updateLocalTopicOnly)
      Update number of partitions of a non-global partitioned topic asynchronously.
    • Method Detail

      • getListAsync

        java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getListAsync​(java.lang.String namespace)
        Get both persistent and non-persistent topics under a namespace asynchronously.

        Response example:

         ["topic://my-tenant/my-namespace/topic-1",
          "topic://my-tenant/my-namespace/topic-2"]
         
        Parameters:
        namespace - Namespace name
        Returns:
        a list of topics
      • getListAsync

        java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getListAsync​(java.lang.String namespace,
                                                                                              TopicDomain topicDomain)
        Get the list of topics under a namespace asynchronously.

        Response example:

         ["topic://my-tenant/my-namespace/topic-1",
          "topic://my-tenant/my-namespace/topic-2"]
         
        Parameters:
        namespace - Namespace name
        topicDomain - use TopicDomain.persistent to get persistent topics use TopicDomain.non_persistent to get non-persistent topics Use null to get both persistent and non-persistent topics
        Returns:
        a list of topics
      • getPartitionedTopicListAsync

        java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getPartitionedTopicListAsync​(java.lang.String namespace)
        Get the list of partitioned topics under a namespace asynchronously.

        Response example:

         ["persistent://my-tenant/my-namespace/topic-1",
          "persistent://my-tenant/my-namespace/topic-2"]
         
        Parameters:
        namespace - Namespace name
        Returns:
        a list of partitioned topics
      • getListInBundle

        java.util.List<java.lang.String> getListInBundle​(java.lang.String namespace,
                                                         java.lang.String bundleRange)
                                                  throws PulsarAdminException
        Get list of topics exist into given bundle.
        Parameters:
        namespace -
        bundleRange -
        Returns:
        Throws:
        PulsarAdminException
      • getListInBundleAsync

        java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getListInBundleAsync​(java.lang.String namespace,
                                                                                                      java.lang.String bundleRange)
        Get list of topics exist into given bundle asynchronously.
        Parameters:
        namespace -
        bundleRange -
        Returns:
      • getPermissions

        java.util.Map<java.lang.String,​java.util.Set<AuthAction>> getPermissions​(java.lang.String topic)
                                                                                throws PulsarAdminException
        Get permissions on a topic.

        Retrieve the effective permissions for a topic. These permissions are defined by the permissions set at the namespace level combined (union) with any eventual specific permission set on the topic.

        Response Example:

         {
           "role-1" : [ "produce" ],
           "role-2" : [ "consume" ]
         }
         
        Parameters:
        topic - Topic url
        Returns:
        a map of topics an their permissions set
        Throws:
        PulsarAdminException.NotAuthorizedException - Don't have admin permission
        PulsarAdminException.NotFoundException - Namespace does not exist
        PulsarAdminException - Unexpected error
      • getPermissionsAsync

        java.util.concurrent.CompletableFuture<java.util.Map<java.lang.String,​java.util.Set<AuthAction>>> getPermissionsAsync​(java.lang.String topic)
        Get permissions on a topic asynchronously.

        Retrieve the effective permissions for a topic. These permissions are defined by the permissions set at the namespace level combined (union) with any eventual specific permission set on the topic.

        Response Example:

         {
           "role-1" : [ "produce" ],
           "role-2" : [ "consume" ]
         }
         
        Parameters:
        topic - Topic url
        Returns:
        a map of topics an their permissions set
      • grantPermissionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> grantPermissionAsync​(java.lang.String topic,
                                                                                    java.lang.String role,
                                                                                    java.util.Set<AuthAction> actions)
        Grant permission on a topic asynchronously.

        Grant a new permission to a client role on a single topic.

        Request parameter example:

         ["produce", "consume"]
         
        Parameters:
        topic - Topic url
        role - Client role to which grant permission
        actions - Auth actions (produce and consume)
      • revokePermissionsAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> revokePermissionsAsync​(java.lang.String topic,
                                                                                      java.lang.String role)
        Revoke permissions on a topic asynchronously.

        Revoke permissions to a client role on a single topic. If the permission was not set at the topic level, but rather at the namespace level, this operation will return an error (HTTP status code 412).

        Parameters:
        topic - Topic url
        role - Client role to which remove permission
      • createPartitionedTopic

        void createPartitionedTopic​(java.lang.String topic,
                                    int numPartitions)
                             throws PulsarAdminException
        Create a partitioned topic.

        Create a partitioned topic. It needs to be called before creating a producer for a partitioned topic.

        Parameters:
        topic - Topic name
        numPartitions - Number of partitions to create of the topic
        Throws:
        PulsarAdminException
      • createPartitionedTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> createPartitionedTopicAsync​(java.lang.String topic,
                                                                                           int numPartitions)
        Create a partitioned topic asynchronously.

        Create a partitioned topic asynchronously. It needs to be called before creating a producer for a partitioned topic.

        Parameters:
        topic - Topic name
        numPartitions - Number of partitions to create of the topic
        Returns:
        a future that can be used to track when the partitioned topic is created
      • createNonPartitionedTopic

        void createNonPartitionedTopic​(java.lang.String topic)
                                throws PulsarAdminException
        Create a non-partitioned topic.

        Create a non-partitioned topic.

        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException
      • createNonPartitionedTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> createNonPartitionedTopicAsync​(java.lang.String topic)
        Create a non-partitioned topic asynchronously.
        Parameters:
        topic - Topic name
      • createMissedPartitions

        void createMissedPartitions​(java.lang.String topic)
                             throws PulsarAdminException
        Create missed partitions for partitioned topic.

        When disable topic auto creation, use this method to try create missed partitions while partitions create failed or users already have partitioned topic without partitions.

        Parameters:
        topic - partitioned topic name
        Throws:
        PulsarAdminException
      • createMissedPartitionsAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> createMissedPartitionsAsync​(java.lang.String topic)
        Create missed partitions for partitioned topic asynchronously.

        When disable topic auto creation, use this method to try create missed partitions while partitions create failed or users already have partitioned topic without partitions.

        Parameters:
        topic - partitioned topic name
      • updatePartitionedTopic

        void updatePartitionedTopic​(java.lang.String topic,
                                    int numPartitions)
                             throws PulsarAdminException
        Update number of partitions of a non-global partitioned topic.

        It requires partitioned-topic to be already exist and number of new partitions must be greater than existing number of partitions. Decrementing number of partitions requires deletion of topic which is not supported.

        Parameters:
        topic - Topic name
        numPartitions - Number of new partitions of already exist partitioned-topic
        Throws:
        PulsarAdminException
      • updatePartitionedTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> updatePartitionedTopicAsync​(java.lang.String topic,
                                                                                           int numPartitions)
        Update number of partitions of a non-global partitioned topic asynchronously.

        It requires partitioned-topic to be already exist and number of new partitions must be greater than existing number of partitions. Decrementing number of partitions requires deletion of topic which is not supported.

        Parameters:
        topic - Topic name
        numPartitions - Number of new partitions of already exist partitioned-topic
        Returns:
        a future that can be used to track when the partitioned topic is updated
      • updatePartitionedTopic

        void updatePartitionedTopic​(java.lang.String topic,
                                    int numPartitions,
                                    boolean updateLocalTopicOnly)
                             throws PulsarAdminException
        Update number of partitions of a non-global partitioned topic.

        It requires partitioned-topic to be already exist and number of new partitions must be greater than existing number of partitions. Decrementing number of partitions requires deletion of topic which is not supported.

        Parameters:
        topic - Topic name
        numPartitions - Number of new partitions of already exist partitioned-topic
        updateLocalTopicOnly - Used by broker for global topic with multiple replicated clusters
        Throws:
        PulsarAdminException
      • updatePartitionedTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> updatePartitionedTopicAsync​(java.lang.String topic,
                                                                                           int numPartitions,
                                                                                           boolean updateLocalTopicOnly)
        Update number of partitions of a non-global partitioned topic asynchronously.

        It requires partitioned-topic to be already exist and number of new partitions must be greater than existing number of partitions. Decrementing number of partitions requires deletion of topic which is not supported.

        Parameters:
        topic - Topic name
        numPartitions - Number of new partitions of already exist partitioned-topic
        updateLocalTopicOnly - Used by broker for global topic with multiple replicated clusters
        Returns:
        a future that can be used to track when the partitioned topic is updated
      • getPartitionedTopicMetadataAsync

        java.util.concurrent.CompletableFuture<PartitionedTopicMetadata> getPartitionedTopicMetadataAsync​(java.lang.String topic)
        Get metadata of a partitioned topic asynchronously.

        Get metadata of a partitioned topic asynchronously.

        Parameters:
        topic - Topic name
        Returns:
        a future that can be used to track when the partitioned topic metadata is returned
      • deletePartitionedTopic

        void deletePartitionedTopic​(java.lang.String topic,
                                    boolean force,
                                    boolean deleteSchema)
                             throws PulsarAdminException
        Delete a partitioned topic.

        It will also delete all the partitions of the topic if it exists.

        Parameters:
        topic - Topic name
        force - Delete topic forcefully
        deleteSchema - Delete topic's schema storage
        Throws:
        PulsarAdminException
      • deletePartitionedTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> deletePartitionedTopicAsync​(java.lang.String topic,
                                                                                           boolean force,
                                                                                           boolean deleteSchema)
        Delete a partitioned topic asynchronously.

        It will also delete all the partitions of the topic if it exists.

        Parameters:
        topic - Topic name
        force - Delete topic forcefully
        deleteSchema - Delete topic's schema storage
        Returns:
        a future that can be used to track when the partitioned topic is deleted
      • deletePartitionedTopic

        void deletePartitionedTopic​(java.lang.String topic)
                             throws PulsarAdminException
        Delete a partitioned topic.

        It will also delete all the partitions of the topic if it exists.

        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException
      • deletePartitionedTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> deletePartitionedTopicAsync​(java.lang.String topic)
        Delete a partitioned topic asynchronously.

        It will also delete all the partitions of the topic if it exists.

        Parameters:
        topic - Topic name
      • deleteAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> deleteAsync​(java.lang.String topic,
                                                                           boolean force,
                                                                           boolean deleteSchema)
        Delete a topic asynchronously.

        Delete a topic asynchronously. The topic cannot be deleted if force flag is disable and there's any active subscription or producer connected to the it. Force flag deletes topic forcefully by closing all active producers and consumers.

        Parameters:
        topic - topic name
        force - Delete topic forcefully
        deleteSchema - Delete topic's schema storage
        Returns:
        a future that can be used to track when the topic is deleted
      • deleteAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> deleteAsync​(java.lang.String topic)
        Delete a topic asynchronously.

        Delete a topic. The topic cannot be deleted if there's any active subscription or producer connected to the it.

        Parameters:
        topic - Topic name
      • unloadAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> unloadAsync​(java.lang.String topic)
        Unload a topic asynchronously.

        Parameters:
        topic - topic name
        Returns:
        a future that can be used to track when the topic is unloaded
      • terminateTopicAsync

        java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.MessageId> terminateTopicAsync​(java.lang.String topic)
        Terminate the topic and prevent any more messages being published on it.

        Parameters:
        topic - topic name
        Returns:
        the message id of the last message that was published in the topic
      • getSubscriptionsAsync

        java.util.concurrent.CompletableFuture<java.util.List<java.lang.String>> getSubscriptionsAsync​(java.lang.String topic)
        Get the list of subscriptions asynchronously.

        Get the list of persistent subscriptions for a given topic.

        Parameters:
        topic - topic name
        Returns:
        a future that can be used to track when the list of subscriptions is returned
      • getStats

        TopicStats getStats​(java.lang.String topic,
                            boolean getPreciseBacklog,
                            boolean subscriptionBacklogSize)
                     throws PulsarAdminException
        Get the stats for the topic.

        Response Example:

         
         {
           "msgRateIn" : 100.0,                    // Total rate of messages published on the topic. msg/s
           "msgThroughputIn" : 10240.0,            // Total throughput of messages published on the topic. byte/s
           "msgRateOut" : 100.0,                   // Total rate of messages delivered on the topic. msg/s
           "msgThroughputOut" : 10240.0,           // Total throughput of messages delivered on the topic. byte/s
           "averageMsgSize" : 1024.0,              // Average size of published messages. bytes
           "publishers" : [                        // List of publishes on this topic with their stats
              {
                  "producerId" : 10                // producer id
                  "address"   : 10.4.1.23:3425     // IP and port for this producer
                  "connectedSince" : 2014-11-21 23:54:46 // Timestamp of this published connection
                  "msgRateIn" : 100.0,             // Total rate of messages published by this producer. msg/s
                  "msgThroughputIn" : 10240.0,     // Total throughput of messages published by this producer. byte/s
                  "averageMsgSize" : 1024.0,       // Average size of published messages by this producer. bytes
              },
           ],
           "subscriptions" : {                     // Map of subscriptions on this topic
             "sub1" : {
               "msgRateOut" : 100.0,               // Total rate of messages delivered on this subscription. msg/s
               "msgThroughputOut" : 10240.0,       // Total throughput delivered on this subscription. bytes/s
               "msgBacklog" : 0,                   // Number of messages in the subscriotion backlog
               "type" : Exclusive                  // Whether the subscription is exclusive or shared
               "consumers" [                       // List of consumers on this subscription
                  {
                      "id" : 5                            // Consumer id
                      "address" : 10.4.1.23:3425          // IP and port for this consumer
                      "connectedSince" : 2014-11-21 23:54:46 // Timestamp of this consumer connection
                      "msgRateOut" : 100.0,               // Total rate of messages delivered to this consumer. msg/s
                      "msgThroughputOut" : 10240.0,       // Total throughput delivered to this consumer. bytes/s
                  }
               ],
           },
           "replication" : {                    // Replication statistics
             "cluster_1" : {                    // Cluster name in the context of from-cluster or to-cluster
               "msgRateIn" : 100.0,             // Total rate of messages received from this remote cluster. msg/s
               "msgThroughputIn" : 10240.0,     // Total throughput received from this remote cluster. bytes/s
               "msgRateOut" : 100.0,            // Total rate of messages delivered to the replication-subscriber. msg/s
               "msgThroughputOut" : 10240.0,    // Total throughput delivered to the replication-subscriber. bytes/s
               "replicationBacklog" : 0,        // Number of messages pending to be replicated to this remote cluster
               "connected" : true,              // Whether the replication-subscriber is currently connected locally
             },
             "cluster_2" : {
               "msgRateIn" : 100.0,
               "msgThroughputIn" : 10240.0,
               "msgRateOut" : 100.0,
               "msgThroughputOut" : 10240.0,
               "replicationBacklog" : 0,
               "connected" : true,
             }
           },
         }
         
         

        All the rates are computed over a 1 minute window and are relative the last completed 1 minute period.

        Parameters:
        topic - topic name
        getPreciseBacklog - Set to true to get precise backlog, Otherwise get imprecise backlog.
        subscriptionBacklogSize - Whether to get backlog size for each subscription.
        Returns:
        the topic statistics
        Throws:
        PulsarAdminException.NotAuthorizedException - Don't have admin permission
        PulsarAdminException.NotFoundException - Topic does not exist
        PulsarAdminException - Unexpected error
      • getStatsAsync

        java.util.concurrent.CompletableFuture<TopicStats> getStatsAsync​(java.lang.String topic,
                                                                         boolean getPreciseBacklog,
                                                                         boolean subscriptionBacklogSize)
        Get the stats for the topic asynchronously. All the rates are computed over a 1 minute window and are relative the last completed 1 minute period.
        Parameters:
        topic - topic name
        getPreciseBacklog - Set to true to get precise backlog, Otherwise get imprecise backlog.
        subscriptionBacklogSize - Whether to get backlog size for each subscription.
        Returns:
        a future that can be used to track when the topic statistics are returned
      • getStatsAsync

        default java.util.concurrent.CompletableFuture<TopicStats> getStatsAsync​(java.lang.String topic)
      • getInternalStatsAsync

        java.util.concurrent.CompletableFuture<PersistentTopicInternalStats> getInternalStatsAsync​(java.lang.String topic,
                                                                                                   boolean metadata)
        Get the internal stats for the topic asynchronously.
        Parameters:
        topic - topic Name
        metadata - flag to include ledger metadata
        Returns:
        a future that can be used to track when the internal topic statistics are returned
      • getInternalStatsAsync

        java.util.concurrent.CompletableFuture<PersistentTopicInternalStats> getInternalStatsAsync​(java.lang.String topic)
        Get the internal stats for the topic asynchronously.
        Parameters:
        topic - topic Name
        Returns:
        a future that can be used to track when the internal topic statistics are returned
      • getPartitionedStats

        PartitionedTopicStats getPartitionedStats​(java.lang.String topic,
                                                  boolean perPartition,
                                                  boolean getPreciseBacklog,
                                                  boolean subscriptionBacklogSize)
                                           throws PulsarAdminException
        Get the stats for the partitioned topic

        Response Example:

         
         {
           "msgRateIn" : 100.0,                 // Total rate of messages published on the partitioned topic. msg/s
           "msgThroughputIn" : 10240.0,         // Total throughput of messages published on the partitioned topic. byte/s
           "msgRateOut" : 100.0,                // Total rate of messages delivered on the partitioned topic. msg/s
           "msgThroughputOut" : 10240.0,        // Total throughput of messages delivered on the partitioned topic. byte/s
           "averageMsgSize" : 1024.0,           // Average size of published messages. bytes
           "publishers" : [                     // List of publishes on this partitioned topic with their stats
              {
                  "msgRateIn" : 100.0,          // Total rate of messages published by this producer. msg/s
                  "msgThroughputIn" : 10240.0,  // Total throughput of messages published by this producer. byte/s
                  "averageMsgSize" : 1024.0,    // Average size of published messages by this producer. bytes
              },
           ],
           "subscriptions" : {                  // Map of subscriptions on this topic
             "sub1" : {
               "msgRateOut" : 100.0,            // Total rate of messages delivered on this subscription. msg/s
               "msgThroughputOut" : 10240.0,    // Total throughput delivered on this subscription. bytes/s
               "msgBacklog" : 0,                // Number of messages in the subscriotion backlog
               "type" : Exclusive               // Whether the subscription is exclusive or shared
               "consumers" [                    // List of consumers on this subscription
                  {
                      "msgRateOut" : 100.0,               // Total rate of messages delivered to this consumer. msg/s
                      "msgThroughputOut" : 10240.0,       // Total throughput delivered to this consumer. bytes/s
                  }
               ],
           },
           "replication" : {                    // Replication statistics
             "cluster_1" : {                    // Cluster name in the context of from-cluster or to-cluster
               "msgRateIn" : 100.0,             // Total rate of messages received from this remote cluster. msg/s
               "msgThroughputIn" : 10240.0,     // Total throughput received from this remote cluster. bytes/s
               "msgRateOut" : 100.0,            // Total rate of messages delivered to the replication-subscriber. msg/s
               "msgThroughputOut" : 10240.0,    // Total throughput delivered to the replication-subscriber. bytes/s
               "replicationBacklog" : 0,        // Number of messages pending to be replicated to this remote cluster
               "connected" : true,              // Whether the replication-subscriber is currently connected locally
             },
             "cluster_2" : {
               "msgRateIn" : 100.0,
               "msgThroughputIn" : 10240.0,
               "msgRateOut" : 100.0,
               "msghroughputOut" : 10240.0,
               "replicationBacklog" : 0,
               "connected" : true,
             }
           },
         }
         
         

        All the rates are computed over a 1 minute window and are relative the last completed 1 minute period.

        Parameters:
        topic - topic name
        perPartition - flag to get stats per partition
        getPreciseBacklog - Set to true to get precise backlog, Otherwise get imprecise backlog.
        subscriptionBacklogSize - Whether to get backlog size for each subscription.
        Returns:
        the partitioned topic statistics
        Throws:
        PulsarAdminException.NotAuthorizedException - Don't have admin permission
        PulsarAdminException.NotFoundException - Topic does not exist
        PulsarAdminException - Unexpected error
      • getPartitionedStatsAsync

        java.util.concurrent.CompletableFuture<PartitionedTopicStats> getPartitionedStatsAsync​(java.lang.String topic,
                                                                                               boolean perPartition,
                                                                                               boolean getPreciseBacklog,
                                                                                               boolean subscriptionBacklogSize)
        Get the stats for the partitioned topic asynchronously.
        Parameters:
        topic - topic Name
        perPartition - flag to get stats per partition
        getPreciseBacklog - Set to true to get precise backlog, Otherwise get imprecise backlog.
        subscriptionBacklogSize - Whether to get backlog size for each subscription.
        Returns:
        a future that can be used to track when the partitioned topic statistics are returned
      • getPartitionedStatsAsync

        default java.util.concurrent.CompletableFuture<PartitionedTopicStats> getPartitionedStatsAsync​(java.lang.String topic,
                                                                                                       boolean perPartition)
      • getPartitionedInternalStatsAsync

        java.util.concurrent.CompletableFuture<PartitionedTopicInternalStats> getPartitionedInternalStatsAsync​(java.lang.String topic)
        Get the stats-internal for the partitioned topic asynchronously.
        Parameters:
        topic - topic Name
        Returns:
        a future that can be used to track when the partitioned topic statistics are returned
      • deleteSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> deleteSubscriptionAsync​(java.lang.String topic,
                                                                                       java.lang.String subName)
        Delete a subscription asynchronously.

        Delete a persistent subscription from a topic. There should not be any active consumers on the subscription.

        Parameters:
        topic - topic name
        subName - Subscription name
        Returns:
        a future that can be used to track when the subscription is deleted
      • deleteSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> deleteSubscriptionAsync​(java.lang.String topic,
                                                                                       java.lang.String subName,
                                                                                       boolean force)
        Delete a subscription asynchronously.

        Delete a persistent subscription from a topic. There should not be any active consumers on the subscription. Force flag deletes subscription forcefully by closing all active consumers.

        Parameters:
        topic - topic name
        subName - Subscription name
        force - Delete topic forcefully
        Returns:
        a future that can be used to track when the subscription is deleted
      • skipAllMessagesAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> skipAllMessagesAsync​(java.lang.String topic,
                                                                                    java.lang.String subName)
        Skip all messages on a topic subscription asynchronously.

        Completely clears the backlog on the subscription.

        Parameters:
        topic - topic name
        subName - Subscription name
        Returns:
        a future that can be used to track when all the messages are skipped
      • skipMessagesAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> skipMessagesAsync​(java.lang.String topic,
                                                                                 java.lang.String subName,
                                                                                 long numMessages)
        Skip messages on a topic subscription asynchronously.
        Parameters:
        topic - topic name
        subName - Subscription name
        numMessages - Number of messages
        Returns:
        a future that can be used to track when the number of messages are skipped
      • expireMessages

        void expireMessages​(java.lang.String topic,
                            java.lang.String subscriptionName,
                            long expireTimeInSeconds)
                     throws PulsarAdminException
        Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription.
        Parameters:
        topic - topic name
        subscriptionName - Subscription name
        expireTimeInSeconds - Expire messages older than time in seconds
        Throws:
        PulsarAdminException - Unexpected error
      • expireMessagesAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> expireMessagesAsync​(java.lang.String topic,
                                                                                   java.lang.String subscriptionName,
                                                                                   long expireTimeInSeconds)
        Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription asynchronously.
        Parameters:
        topic - topic name
        subscriptionName - Subscription name
        expireTimeInSeconds - Expire messages older than time in seconds
        Returns:
      • expireMessages

        void expireMessages​(java.lang.String topic,
                            java.lang.String subscriptionName,
                            org.apache.pulsar.client.api.MessageId messageId,
                            boolean isExcluded)
                     throws PulsarAdminException
        Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription.
        Parameters:
        topic - topic name
        subscriptionName - Subscription name
        messageId - Position before which all messages will be expired.
        isExcluded - Will message at passed in position also be expired.
        Throws:
        PulsarAdminException - Unexpected error
      • expireMessagesAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> expireMessagesAsync​(java.lang.String topic,
                                                                                   java.lang.String subscriptionName,
                                                                                   org.apache.pulsar.client.api.MessageId messageId,
                                                                                   boolean isExcluded)
        Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription asynchronously.
        Parameters:
        topic - topic name
        subscriptionName - Subscription name
        messageId - Position before which all messages will be expired.
        isExcluded - Will message at passed in position also be expired.
        Returns:
        A CompletableFuture that'll be completed when expire message is done.
      • expireMessagesForAllSubscriptions

        void expireMessagesForAllSubscriptions​(java.lang.String topic,
                                               long expireTimeInSeconds)
                                        throws PulsarAdminException
        Expire all messages older than given N seconds for all subscriptions of the persistent-topic.
        Parameters:
        topic - topic name
        expireTimeInSeconds - Expire messages older than time in seconds
        Throws:
        PulsarAdminException - Unexpected error
      • expireMessagesForAllSubscriptionsAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> expireMessagesForAllSubscriptionsAsync​(java.lang.String topic,
                                                                                                      long expireTimeInSeconds)
        Expire all messages older than given N seconds for all subscriptions of the persistent-topic asynchronously.
        Parameters:
        topic - topic name
        expireTimeInSeconds - Expire messages older than time in seconds
      • peekMessagesAsync

        java.util.concurrent.CompletableFuture<java.util.List<org.apache.pulsar.client.api.Message<byte[]>>> peekMessagesAsync​(java.lang.String topic,
                                                                                                                               java.lang.String subName,
                                                                                                                               int numMessages)
        Peek messages from a topic subscription asynchronously.
        Parameters:
        topic - topic name
        subName - Subscription name
        numMessages - Number of messages
        Returns:
        a future that can be used to track when the messages are returned
      • getMessageById

        org.apache.pulsar.client.api.Message<byte[]> getMessageById​(java.lang.String topic,
                                                                    long ledgerId,
                                                                    long entryId)
                                                             throws PulsarAdminException
        Get a message by its messageId via a topic subscription.
        Parameters:
        topic - Topic name
        ledgerId - Ledger id
        entryId - Entry id
        Returns:
        the message indexed by the messageId
        Throws:
        PulsarAdminException - Unexpected error
      • getMessageByIdAsync

        java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.Message<byte[]>> getMessageByIdAsync​(java.lang.String topic,
                                                                                                                 long ledgerId,
                                                                                                                 long entryId)
        Get a message by its messageId via a topic subscription asynchronously.
        Parameters:
        topic - Topic name
        ledgerId - Ledger id
        entryId - Entry id
        Returns:
        a future that can be used to track when the message is returned
      • createSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> createSubscriptionAsync​(java.lang.String topic,
                                                                                       java.lang.String subscriptionName,
                                                                                       org.apache.pulsar.client.api.MessageId messageId)
        Create a new subscription on a topic.
        Parameters:
        topic - topic name
        subscriptionName - Subscription name
        messageId - The MessageId on where to initialize the subscription. It could be MessageId.latest, MessageId.earliest or a specific message id.
      • resetCursor

        void resetCursor​(java.lang.String topic,
                         java.lang.String subName,
                         org.apache.pulsar.client.api.MessageId messageId,
                         boolean isExcluded)
                  throws PulsarAdminException
        Reset cursor position on a topic subscription.

        and start consume messages from the next position of the reset position.

        Parameters:
        topic -
        subName -
        messageId -
        isExcluded -
        Throws:
        PulsarAdminException
      • resetCursorAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> resetCursorAsync​(java.lang.String topic,
                                                                                java.lang.String subName,
                                                                                long timestamp)
        Reset cursor position on a topic subscription.
        Parameters:
        topic - topic name
        subName - Subscription name
        timestamp - reset subscription to position closest to time in ms since epoch
      • resetCursorAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> resetCursorAsync​(java.lang.String topic,
                                                                                java.lang.String subName,
                                                                                org.apache.pulsar.client.api.MessageId messageId,
                                                                                boolean isExcluded)
        Reset cursor position on a topic subscription.

        and start consume messages from the next position of the reset position.

        Parameters:
        topic -
        subName -
        messageId -
        isExcluded -
        Returns:
      • resetCursorAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> resetCursorAsync​(java.lang.String topic,
                                                                                java.lang.String subName,
                                                                                org.apache.pulsar.client.api.MessageId messageId)
        Reset cursor position on a topic subscription.
        Parameters:
        topic - topic name
        subName - Subscription name
        messageId - reset subscription to messageId (or previous nearest messageId if given messageId is not valid)
      • triggerCompaction

        void triggerCompaction​(java.lang.String topic)
                        throws PulsarAdminException
        Trigger compaction to run for a topic. A single topic can only have one instance of compaction running at any time. Any attempt to trigger another will be met with a ConflictException.
        Parameters:
        topic - The topic on which to trigger compaction
        Throws:
        PulsarAdminException
      • triggerCompactionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> triggerCompactionAsync​(java.lang.String topic)
        Trigger compaction to run for a topic asynchronously.
        Parameters:
        topic - The topic on which to trigger compaction
      • compactionStatusAsync

        java.util.concurrent.CompletableFuture<LongRunningProcessStatus> compactionStatusAsync​(java.lang.String topic)
        Check the status of an ongoing compaction for a topic asynchronously.
        Parameters:
        topic - The topic whose compaction status we wish to check
      • triggerOffload

        void triggerOffload​(java.lang.String topic,
                            org.apache.pulsar.client.api.MessageId messageId)
                     throws PulsarAdminException
        Trigger offloading messages in topic to longterm storage.
        Parameters:
        topic - the topic to offload
        messageId - ID of maximum message which should be offloaded
        Throws:
        PulsarAdminException
      • triggerOffloadAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> triggerOffloadAsync​(java.lang.String topic,
                                                                                   org.apache.pulsar.client.api.MessageId messageId)
        Trigger offloading messages in topic to longterm storage asynchronously.
        Parameters:
        topic - the topic to offload
        messageId - ID of maximum message which should be offloaded
      • offloadStatusAsync

        java.util.concurrent.CompletableFuture<OffloadProcessStatus> offloadStatusAsync​(java.lang.String topic)
        Check the status of an ongoing offloading operation for a topic asynchronously.
        Parameters:
        topic - the topic being offloaded
        Returns:
        the status of the offload operation
      • getLastMessageId

        org.apache.pulsar.client.api.MessageId getLastMessageId​(java.lang.String topic)
                                                         throws PulsarAdminException
        Get the last commit message Id of a topic.
        Parameters:
        topic - the topic name
        Returns:
        Throws:
        PulsarAdminException
      • getLastMessageIdAsync

        java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.MessageId> getLastMessageIdAsync​(java.lang.String topic)
        Get the last commit message Id of a topic asynchronously.
        Parameters:
        topic - the topic name
        Returns:
      • getDelayedDeliveryPolicyAsync

        java.util.concurrent.CompletableFuture<DelayedDeliveryPolicies> getDelayedDeliveryPolicyAsync​(java.lang.String topic,
                                                                                                      boolean applied)
        Get the delayed delivery policy applied for a specified topic asynchronously.
        Parameters:
        topic -
        applied -
        Returns:
      • getDelayedDeliveryPolicyAsync

        java.util.concurrent.CompletableFuture<DelayedDeliveryPolicies> getDelayedDeliveryPolicyAsync​(java.lang.String topic)
        Get the delayed delivery policy for a specified topic asynchronously.
        Parameters:
        topic -
        Returns:
      • setDelayedDeliveryPolicyAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setDelayedDeliveryPolicyAsync​(java.lang.String topic,
                                                                                             DelayedDeliveryPolicies delayedDeliveryPolicies)
        Set the delayed delivery policy for a specified topic asynchronously.
        Parameters:
        topic -
        delayedDeliveryPolicies -
        Returns:
      • removeDelayedDeliveryPolicyAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeDelayedDeliveryPolicyAsync​(java.lang.String topic)
        Remove the delayed delivery policy for a specified topic asynchronously.
        Parameters:
        topic -
        Returns:
      • removeDelayedDeliveryPolicy

        void removeDelayedDeliveryPolicy​(java.lang.String topic)
                                  throws PulsarAdminException
        Remove the delayed delivery policy for a specified topic.
        Parameters:
        topic -
        Throws:
        PulsarAdminException
      • getMessageTTL

        java.lang.Integer getMessageTTL​(java.lang.String topic,
                                        boolean applied)
                                 throws PulsarAdminException
        Get message TTL applied for a topic.
        Parameters:
        topic -
        Returns:
        Throws:
        PulsarAdminException
      • setRetentionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setRetentionAsync​(java.lang.String topic,
                                                                                 RetentionPolicies retention)
        Set the retention configuration for all the topics on a topic asynchronously.

        Set the retention configuration on a topic. This operation requires Pulsar super-user access.

        Request parameter example:

         
         {
             "retentionTimeInMinutes" : 60,            // how long to retain messages
             "retentionSizeInMB" : 1024,              // retention backlog limit
         }
         
         
        Parameters:
        topic - Topic name
      • getRetentionAsync

        java.util.concurrent.CompletableFuture<RetentionPolicies> getRetentionAsync​(java.lang.String topic)
        Get the retention configuration for a topic asynchronously.

        Get the retention configuration for a topic.

        Parameters:
        topic - Topic name
      • getRetentionAsync

        java.util.concurrent.CompletableFuture<RetentionPolicies> getRetentionAsync​(java.lang.String topic,
                                                                                    boolean applied)
        Get the applied retention configuration for a topic asynchronously.
        Parameters:
        topic -
        applied -
        Returns:
      • removeRetentionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeRetentionAsync​(java.lang.String topic)
        Remove the retention configuration for all the topics on a topic asynchronously.

        Remove the retention configuration on a topic. This operation requires Pulsar super-user access.

        Request parameter example:

         
         {
             "retentionTimeInMinutes" : 60,            // how long to retain messages
             "retentionSizeInMB" : 1024,              // retention backlog limit
         }
         
         
        Parameters:
        topic - Topic name
      • getMaxUnackedMessagesOnConsumer

        java.lang.Integer getMaxUnackedMessagesOnConsumer​(java.lang.String topic)
                                                   throws PulsarAdminException
        get max unacked messages on consumer of a topic.
        Parameters:
        topic -
        Returns:
        Throws:
        PulsarAdminException
      • getMaxUnackedMessagesOnConsumerAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxUnackedMessagesOnConsumerAsync​(java.lang.String topic)
        get max unacked messages on consumer of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • getMaxUnackedMessagesOnConsumer

        java.lang.Integer getMaxUnackedMessagesOnConsumer​(java.lang.String topic,
                                                          boolean applied)
                                                   throws PulsarAdminException
        get applied max unacked messages on consumer of a topic.
        Parameters:
        topic -
        applied -
        Returns:
        Throws:
        PulsarAdminException
      • getMaxUnackedMessagesOnConsumerAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxUnackedMessagesOnConsumerAsync​(java.lang.String topic,
                                                                                                       boolean applied)
        get applied max unacked messages on consumer of a topic asynchronously.
        Parameters:
        topic -
        applied -
        Returns:
      • setMaxUnackedMessagesOnConsumer

        void setMaxUnackedMessagesOnConsumer​(java.lang.String topic,
                                             int maxNum)
                                      throws PulsarAdminException
        set max unacked messages on consumer of a topic.
        Parameters:
        topic -
        maxNum -
        Throws:
        PulsarAdminException
      • setMaxUnackedMessagesOnConsumerAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setMaxUnackedMessagesOnConsumerAsync​(java.lang.String topic,
                                                                                                    int maxNum)
        set max unacked messages on consumer of a topic asynchronously.
        Parameters:
        topic -
        maxNum -
        Returns:
      • removeMaxUnackedMessagesOnConsumer

        void removeMaxUnackedMessagesOnConsumer​(java.lang.String topic)
                                         throws PulsarAdminException
        remove max unacked messages on consumer of a topic.
        Parameters:
        topic -
        Throws:
        PulsarAdminException
      • removeMaxUnackedMessagesOnConsumerAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxUnackedMessagesOnConsumerAsync​(java.lang.String topic)
        remove max unacked messages on consumer of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • getInactiveTopicPoliciesAsync

        java.util.concurrent.CompletableFuture<InactiveTopicPolicies> getInactiveTopicPoliciesAsync​(java.lang.String topic,
                                                                                                    boolean applied)
        Get inactive topic policies applied for a topic asynchronously.
        Parameters:
        topic -
        applied -
        Returns:
      • getInactiveTopicPoliciesAsync

        java.util.concurrent.CompletableFuture<InactiveTopicPolicies> getInactiveTopicPoliciesAsync​(java.lang.String topic)
        get inactive topic policies of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • setInactiveTopicPoliciesAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setInactiveTopicPoliciesAsync​(java.lang.String topic,
                                                                                             InactiveTopicPolicies inactiveTopicPolicies)
        set inactive topic policies of a topic asynchronously.
        Parameters:
        topic -
        inactiveTopicPolicies -
        Returns:
      • removeInactiveTopicPolicies

        void removeInactiveTopicPolicies​(java.lang.String topic)
                                  throws PulsarAdminException
        remove inactive topic policies of a topic.
        Parameters:
        topic -
        Throws:
        PulsarAdminException
      • removeInactiveTopicPoliciesAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeInactiveTopicPoliciesAsync​(java.lang.String topic)
        remove inactive topic policies of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • getOffloadPoliciesAsync

        java.util.concurrent.CompletableFuture<OffloadPolicies> getOffloadPoliciesAsync​(java.lang.String topic)
        get offload policies of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • getOffloadPoliciesAsync

        java.util.concurrent.CompletableFuture<OffloadPolicies> getOffloadPoliciesAsync​(java.lang.String topic,
                                                                                        boolean applied)
        get applied offload policies of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • setOffloadPoliciesAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setOffloadPoliciesAsync​(java.lang.String topic,
                                                                                       OffloadPolicies offloadPolicies)
        set offload policies of a topic asynchronously.
        Parameters:
        topic -
        offloadPolicies -
        Returns:
      • removeOffloadPoliciesAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeOffloadPoliciesAsync​(java.lang.String topic)
        remove offload policies of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • getMaxUnackedMessagesOnSubscription

        java.lang.Integer getMaxUnackedMessagesOnSubscription​(java.lang.String topic)
                                                       throws PulsarAdminException
        get max unacked messages on subscription of a topic.
        Parameters:
        topic -
        Returns:
        Throws:
        PulsarAdminException
      • getMaxUnackedMessagesOnSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxUnackedMessagesOnSubscriptionAsync​(java.lang.String topic)
        get max unacked messages on subscription of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • getMaxUnackedMessagesOnSubscription

        java.lang.Integer getMaxUnackedMessagesOnSubscription​(java.lang.String topic,
                                                              boolean applied)
                                                       throws PulsarAdminException
        get max unacked messages on subscription of a topic.
        Parameters:
        topic -
        Returns:
        Throws:
        PulsarAdminException
      • getMaxUnackedMessagesOnSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxUnackedMessagesOnSubscriptionAsync​(java.lang.String topic,
                                                                                                           boolean applied)
        get max unacked messages on subscription of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • setMaxUnackedMessagesOnSubscription

        void setMaxUnackedMessagesOnSubscription​(java.lang.String topic,
                                                 int maxNum)
                                          throws PulsarAdminException
        set max unacked messages on subscription of a topic.
        Parameters:
        topic -
        maxNum -
        Throws:
        PulsarAdminException
      • setMaxUnackedMessagesOnSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setMaxUnackedMessagesOnSubscriptionAsync​(java.lang.String topic,
                                                                                                        int maxNum)
        set max unacked messages on subscription of a topic asynchronously.
        Parameters:
        topic -
        maxNum -
        Returns:
      • removeMaxUnackedMessagesOnSubscription

        void removeMaxUnackedMessagesOnSubscription​(java.lang.String topic)
                                             throws PulsarAdminException
        remove max unacked messages on subscription of a topic.
        Parameters:
        topic -
        Throws:
        PulsarAdminException
      • removeMaxUnackedMessagesOnSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxUnackedMessagesOnSubscriptionAsync​(java.lang.String topic)
        remove max unacked messages on subscription of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • setPersistence

        void setPersistence​(java.lang.String topic,
                            PersistencePolicies persistencePolicies)
                     throws PulsarAdminException
        Set the configuration of persistence policies for specified topic.
        Parameters:
        topic - Topic name
        persistencePolicies - Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • setPersistenceAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setPersistenceAsync​(java.lang.String topic,
                                                                                   PersistencePolicies persistencePolicies)
        Set the configuration of persistence policies for specified topic asynchronously.
        Parameters:
        topic - Topic name
        persistencePolicies - Configuration of bookkeeper persistence policies
      • getPersistence

        PersistencePolicies getPersistence​(java.lang.String topic)
                                    throws PulsarAdminException
        Get the configuration of persistence policies for specified topic.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • getPersistenceAsync

        java.util.concurrent.CompletableFuture<PersistencePolicies> getPersistenceAsync​(java.lang.String topic)
        Get the configuration of persistence policies for specified topic asynchronously.
        Parameters:
        topic - Topic name
      • getPersistence

        PersistencePolicies getPersistence​(java.lang.String topic,
                                           boolean applied)
                                    throws PulsarAdminException
        Get the applied configuration of persistence policies for specified topic.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • getPersistenceAsync

        java.util.concurrent.CompletableFuture<PersistencePolicies> getPersistenceAsync​(java.lang.String topic,
                                                                                        boolean applied)
        Get the applied configuration of persistence policies for specified topic asynchronously.
        Parameters:
        topic - Topic name
      • removePersistence

        void removePersistence​(java.lang.String topic)
                        throws PulsarAdminException
        Remove the configuration of persistence policies for specified topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removePersistenceAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removePersistenceAsync​(java.lang.String topic)
        Remove the configuration of persistence policies for specified topic asynchronously.
        Parameters:
        topic - Topic name
      • getDeduplicationEnabled

        @Deprecated
        java.lang.Boolean getDeduplicationEnabled​(java.lang.String topic)
                                           throws PulsarAdminException
        Deprecated.
        get deduplication enabled of a topic.
        Parameters:
        topic -
        Returns:
        Throws:
        PulsarAdminException
      • getDeduplicationEnabledAsync

        @Deprecated
        java.util.concurrent.CompletableFuture<java.lang.Boolean> getDeduplicationEnabledAsync​(java.lang.String topic)
        Deprecated.
        get deduplication enabled of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • getDeduplicationStatus

        java.lang.Boolean getDeduplicationStatus​(java.lang.String topic)
                                          throws PulsarAdminException
        get deduplication enabled of a topic.
        Parameters:
        topic -
        Returns:
        Throws:
        PulsarAdminException
      • getDeduplicationStatusAsync

        java.util.concurrent.CompletableFuture<java.lang.Boolean> getDeduplicationStatusAsync​(java.lang.String topic)
        get deduplication enabled of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • getDeduplicationStatus

        java.lang.Boolean getDeduplicationStatus​(java.lang.String topic,
                                                 boolean applied)
                                          throws PulsarAdminException
        get applied deduplication enabled of a topic.
        Parameters:
        topic -
        Returns:
        Throws:
        PulsarAdminException
      • getDeduplicationStatusAsync

        java.util.concurrent.CompletableFuture<java.lang.Boolean> getDeduplicationStatusAsync​(java.lang.String topic,
                                                                                              boolean applied)
        get applied deduplication enabled of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • enableDeduplication

        @Deprecated
        void enableDeduplication​(java.lang.String topic,
                                 boolean enabled)
                          throws PulsarAdminException
        Deprecated.
        set deduplication enabled of a topic.
        Parameters:
        topic -
        enabled -
        Throws:
        PulsarAdminException
      • enableDeduplicationAsync

        @Deprecated
        java.util.concurrent.CompletableFuture<java.lang.Void> enableDeduplicationAsync​(java.lang.String topic,
                                                                                        boolean enabled)
        Deprecated.
        set deduplication enabled of a topic asynchronously.
        Parameters:
        topic -
        enabled -
        Returns:
      • setDeduplicationStatus

        void setDeduplicationStatus​(java.lang.String topic,
                                    boolean enabled)
                             throws PulsarAdminException
        set deduplication enabled of a topic.
        Parameters:
        topic -
        enabled -
        Throws:
        PulsarAdminException
      • setDeduplicationStatusAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setDeduplicationStatusAsync​(java.lang.String topic,
                                                                                           boolean enabled)
        set deduplication enabled of a topic asynchronously.
        Parameters:
        topic -
        enabled -
        Returns:
      • disableDeduplication

        @Deprecated
        void disableDeduplication​(java.lang.String topic)
                           throws PulsarAdminException
        Deprecated.
        remove deduplication enabled of a topic.
        Parameters:
        topic -
        Throws:
        PulsarAdminException
      • disableDeduplicationAsync

        @Deprecated
        java.util.concurrent.CompletableFuture<java.lang.Void> disableDeduplicationAsync​(java.lang.String topic)
        Deprecated.
        remove deduplication enabled of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • removeDeduplicationStatus

        void removeDeduplicationStatus​(java.lang.String topic)
                                throws PulsarAdminException
        remove deduplication enabled of a topic.
        Parameters:
        topic -
        Throws:
        PulsarAdminException
      • removeDeduplicationStatusAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeDeduplicationStatusAsync​(java.lang.String topic)
        remove deduplication enabled of a topic asynchronously.
        Parameters:
        topic -
        Returns:
      • setDispatchRate

        void setDispatchRate​(java.lang.String topic,
                             DispatchRate dispatchRate)
                      throws PulsarAdminException
        Set message-dispatch-rate (topic can dispatch this many messages per second).
        Parameters:
        topic -
        dispatchRate - number of messages per second
        Throws:
        PulsarAdminException - Unexpected error
      • setDispatchRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setDispatchRateAsync​(java.lang.String topic,
                                                                                    DispatchRate dispatchRate)
        Set message-dispatch-rate asynchronously.

        topic can dispatch this many messages per second

        Parameters:
        topic -
        dispatchRate - number of messages per second
      • getDispatchRateAsync

        java.util.concurrent.CompletableFuture<DispatchRate> getDispatchRateAsync​(java.lang.String topic)
        Get message-dispatch-rate asynchronously.

        Topic can dispatch this many messages per second.

        Parameters:
        topic -
      • getDispatchRate

        DispatchRate getDispatchRate​(java.lang.String topic,
                                     boolean applied)
                              throws PulsarAdminException
        Get applied message-dispatch-rate (topic can dispatch this many messages per second).
        Parameters:
        topic -
        Throws:
        PulsarAdminException - Unexpected error
      • getDispatchRateAsync

        java.util.concurrent.CompletableFuture<DispatchRate> getDispatchRateAsync​(java.lang.String topic,
                                                                                  boolean applied)
        Get applied message-dispatch-rate asynchronously.

        Topic can dispatch this many messages per second.

        Parameters:
        topic -
      • removeDispatchRate

        void removeDispatchRate​(java.lang.String topic)
                         throws PulsarAdminException
        Remove message-dispatch-rate.

        Remove topic message dispatch rate

        Parameters:
        topic -
        Throws:
        PulsarAdminException - unexpected error
      • removeDispatchRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeDispatchRateAsync​(java.lang.String topic)
                                                                                throws PulsarAdminException
        Remove message-dispatch-rate asynchronously.

        Remove topic message dispatch rate

        Parameters:
        topic -
        Throws:
        PulsarAdminException - unexpected error
      • setSubscriptionDispatchRate

        void setSubscriptionDispatchRate​(java.lang.String topic,
                                         DispatchRate dispatchRate)
                                  throws PulsarAdminException
        Set subscription-message-dispatch-rate for the topic.

        Subscriptions under this namespace can dispatch this many messages per second

        Parameters:
        topic -
        dispatchRate - number of messages per second
        Throws:
        PulsarAdminException - Unexpected error
      • setSubscriptionDispatchRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setSubscriptionDispatchRateAsync​(java.lang.String topic,
                                                                                                DispatchRate dispatchRate)
        Set subscription-message-dispatch-rate for the topic asynchronously.

        Subscriptions under this namespace can dispatch this many messages per second.

        Parameters:
        topic -
        dispatchRate - number of messages per second
      • getSubscriptionDispatchRate

        DispatchRate getSubscriptionDispatchRate​(java.lang.String namespace,
                                                 boolean applied)
                                          throws PulsarAdminException
        Get applied subscription-message-dispatch-rate.

        Subscriptions under this namespace can dispatch this many messages per second.

        Parameters:
        namespace -
        Throws:
        PulsarAdminException - Unexpected error
      • getSubscriptionDispatchRateAsync

        java.util.concurrent.CompletableFuture<DispatchRate> getSubscriptionDispatchRateAsync​(java.lang.String namespace,
                                                                                              boolean applied)
        Get applied subscription-message-dispatch-rate asynchronously.

        Subscriptions under this namespace can dispatch this many messages per second.

        Parameters:
        namespace -
      • getSubscriptionDispatchRate

        DispatchRate getSubscriptionDispatchRate​(java.lang.String topic)
                                          throws PulsarAdminException
        Get subscription-message-dispatch-rate for the topic.

        Subscriptions under this namespace can dispatch this many messages per second.

        Parameters:
        topic -
        Throws:
        PulsarAdminException - Unexpected error
      • getSubscriptionDispatchRateAsync

        java.util.concurrent.CompletableFuture<DispatchRate> getSubscriptionDispatchRateAsync​(java.lang.String topic)
        Get subscription-message-dispatch-rate asynchronously.

        Subscriptions under this namespace can dispatch this many messages per second.

        Parameters:
        topic -
      • removeSubscriptionDispatchRate

        void removeSubscriptionDispatchRate​(java.lang.String topic)
                                     throws PulsarAdminException
        Remove subscription-message-dispatch-rate for a topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removeSubscriptionDispatchRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeSubscriptionDispatchRateAsync​(java.lang.String topic)
        Remove subscription-message-dispatch-rate for a topic asynchronously.
        Parameters:
        topic - Topic name
      • setReplicatorDispatchRate

        void setReplicatorDispatchRate​(java.lang.String topic,
                                       DispatchRate dispatchRate)
                                throws PulsarAdminException
        Set replicatorDispatchRate for the topic.

        Replicator dispatch rate under this topic can dispatch this many messages per second

        Parameters:
        topic -
        dispatchRate - number of messages per second
        Throws:
        PulsarAdminException - Unexpected error
      • setReplicatorDispatchRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setReplicatorDispatchRateAsync​(java.lang.String topic,
                                                                                              DispatchRate dispatchRate)
        Set replicatorDispatchRate for the topic asynchronously.

        Replicator dispatch rate under this topic can dispatch this many messages per second.

        Parameters:
        topic -
        dispatchRate - number of messages per second
      • getReplicatorDispatchRate

        DispatchRate getReplicatorDispatchRate​(java.lang.String topic)
                                        throws PulsarAdminException
        Get replicatorDispatchRate for the topic.

        Replicator dispatch rate under this topic can dispatch this many messages per second.

        Parameters:
        topic -
        Throws:
        PulsarAdminException - Unexpected error
      • getReplicatorDispatchRateAsync

        java.util.concurrent.CompletableFuture<DispatchRate> getReplicatorDispatchRateAsync​(java.lang.String topic)
        Get replicatorDispatchRate asynchronously.

        Replicator dispatch rate under this topic can dispatch this many messages per second.

        Parameters:
        topic -
      • getReplicatorDispatchRateAsync

        java.util.concurrent.CompletableFuture<DispatchRate> getReplicatorDispatchRateAsync​(java.lang.String topic,
                                                                                            boolean applied)
        Get applied replicatorDispatchRate asynchronously.
        Parameters:
        topic -
        applied -
        Returns:
      • removeReplicatorDispatchRate

        void removeReplicatorDispatchRate​(java.lang.String topic)
                                   throws PulsarAdminException
        Remove replicatorDispatchRate for a topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removeReplicatorDispatchRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeReplicatorDispatchRateAsync​(java.lang.String topic)
        Remove replicatorDispatchRate for a topic asynchronously.
        Parameters:
        topic - Topic name
      • getCompactionThresholdAsync

        java.util.concurrent.CompletableFuture<java.lang.Long> getCompactionThresholdAsync​(java.lang.String topic)
        Get the compactionThreshold for a topic asynchronously. The maximum number of bytes can have before compaction is triggered. 0 disables.

        Response example:

         10000000
         
        Parameters:
        topic - Topic name
      • getCompactionThresholdAsync

        java.util.concurrent.CompletableFuture<java.lang.Long> getCompactionThresholdAsync​(java.lang.String topic,
                                                                                           boolean applied)
        Get the compactionThreshold for a topic asynchronously. The maximum number of bytes can have before compaction is triggered. 0 disables.
        Parameters:
        topic - Topic name
      • setCompactionThresholdAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setCompactionThresholdAsync​(java.lang.String topic,
                                                                                           long compactionThreshold)
        Set the compactionThreshold for a topic asynchronously. The maximum number of bytes can have before compaction is triggered. 0 disables.

        Request example:

         10000000
         
        Parameters:
        topic - Topic name
        compactionThreshold - maximum number of backlog bytes before compaction is triggered
      • removeCompactionThreshold

        void removeCompactionThreshold​(java.lang.String topic)
                                throws PulsarAdminException
        Remove the compactionThreshold for a topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removeCompactionThresholdAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeCompactionThresholdAsync​(java.lang.String topic)
        Remove the compactionThreshold for a topic asynchronously.
        Parameters:
        topic - Topic name
      • setPublishRate

        void setPublishRate​(java.lang.String topic,
                            PublishRate publishMsgRate)
                     throws PulsarAdminException
        Set message-publish-rate (topics can publish this many messages per second).
        Parameters:
        topic -
        publishMsgRate - number of messages per second
        Throws:
        PulsarAdminException - Unexpected error
      • setPublishRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setPublishRateAsync​(java.lang.String topic,
                                                                                   PublishRate publishMsgRate)
        Set message-publish-rate (topics can publish this many messages per second) asynchronously.
        Parameters:
        topic -
        publishMsgRate - number of messages per second
      • getPublishRate

        PublishRate getPublishRate​(java.lang.String topic)
                            throws PulsarAdminException
        Get message-publish-rate (topics can publish this many messages per second).
        Parameters:
        topic -
        Returns:
        number of messages per second
        Throws:
        PulsarAdminException - Unexpected error
      • getPublishRateAsync

        java.util.concurrent.CompletableFuture<PublishRate> getPublishRateAsync​(java.lang.String topic)
        Get message-publish-rate (topics can publish this many messages per second) asynchronously.
        Parameters:
        topic -
        Returns:
        number of messages per second
      • removePublishRate

        void removePublishRate​(java.lang.String topic)
                        throws PulsarAdminException
        Remove message-publish-rate.

        Remove topic message publish rate

        Parameters:
        topic -
        Throws:
        PulsarAdminException - unexpected error
      • removePublishRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removePublishRateAsync​(java.lang.String topic)
                                                                               throws PulsarAdminException
        Remove message-publish-rate asynchronously.

        Remove topic message publish rate

        Parameters:
        topic -
        Throws:
        PulsarAdminException - unexpected error
      • getMaxConsumersPerSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxConsumersPerSubscriptionAsync​(java.lang.String topic)
        Get the maxConsumersPerSubscription for a topic asynchronously.

        Response example:

         0
         
        Parameters:
        topic - Topic name
      • setMaxConsumersPerSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setMaxConsumersPerSubscriptionAsync​(java.lang.String topic,
                                                                                                   int maxConsumersPerSubscription)
        Set maxConsumersPerSubscription for a topic asynchronously.

        Request example:

         10
         
        Parameters:
        topic - Topic name
        maxConsumersPerSubscription - maxConsumersPerSubscription value for a namespace
      • removeMaxConsumersPerSubscription

        void removeMaxConsumersPerSubscription​(java.lang.String topic)
                                        throws PulsarAdminException
        Remove the maxConsumersPerSubscription for a topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxConsumersPerSubscriptionAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxConsumersPerSubscriptionAsync​(java.lang.String topic)
        Remove the maxConsumersPerSubscription for a topic asynchronously.
        Parameters:
        topic - Topic name
      • getMaxProducers

        java.lang.Integer getMaxProducers​(java.lang.String topic)
                                   throws PulsarAdminException
        Get the max number of producer for specified topic.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • getMaxProducersAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxProducersAsync​(java.lang.String topic)
        Get the max number of producer for specified topic asynchronously.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • getMaxProducers

        java.lang.Integer getMaxProducers​(java.lang.String topic,
                                          boolean applied)
                                   throws PulsarAdminException
        Get the max number of producer applied for specified topic.
        Parameters:
        topic -
        applied -
        Returns:
        Throws:
        PulsarAdminException
      • getMaxProducersAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxProducersAsync​(java.lang.String topic,
                                                                                       boolean applied)
        Get the max number of producer applied for specified topic asynchronously.
        Parameters:
        topic -
        applied -
        Returns:
      • setMaxProducers

        void setMaxProducers​(java.lang.String topic,
                             int maxProducers)
                      throws PulsarAdminException
        Set the max number of producer for specified topic.
        Parameters:
        topic - Topic name
        maxProducers - Max number of producer
        Throws:
        PulsarAdminException - Unexpected error
      • setMaxProducersAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setMaxProducersAsync​(java.lang.String topic,
                                                                                    int maxProducers)
        Set the max number of producer for specified topic asynchronously.
        Parameters:
        topic - Topic name
        maxProducers - Max number of producer
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxProducers

        void removeMaxProducers​(java.lang.String topic)
                         throws PulsarAdminException
        Remove the max number of producer for specified topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxProducersAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxProducersAsync​(java.lang.String topic)
        Remove the max number of producer for specified topic asynchronously.
        Parameters:
        topic - Topic name
      • getMaxSubscriptionsPerTopic

        java.lang.Integer getMaxSubscriptionsPerTopic​(java.lang.String topic)
                                               throws PulsarAdminException
        Get the max number of subscriptions for specified topic.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • getMaxSubscriptionsPerTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxSubscriptionsPerTopicAsync​(java.lang.String topic)
        Get the max number of subscriptions for specified topic asynchronously.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • setMaxSubscriptionsPerTopic

        void setMaxSubscriptionsPerTopic​(java.lang.String topic,
                                         int maxSubscriptionsPerTopic)
                                  throws PulsarAdminException
        Set the max number of subscriptions for specified topic.
        Parameters:
        topic - Topic name
        maxSubscriptionsPerTopic - Max number of subscriptions
        Throws:
        PulsarAdminException - Unexpected error
      • setMaxSubscriptionsPerTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setMaxSubscriptionsPerTopicAsync​(java.lang.String topic,
                                                                                                int maxSubscriptionsPerTopic)
        Set the max number of subscriptions for specified topic asynchronously.
        Parameters:
        topic - Topic name
        maxSubscriptionsPerTopic - Max number of subscriptions
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxSubscriptionsPerTopic

        void removeMaxSubscriptionsPerTopic​(java.lang.String topic)
                                     throws PulsarAdminException
        Remove the max number of subscriptions for specified topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxSubscriptionsPerTopicAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxSubscriptionsPerTopicAsync​(java.lang.String topic)
        Remove the max number of subscriptions for specified topic asynchronously.
        Parameters:
        topic - Topic name
      • getMaxMessageSize

        java.lang.Integer getMaxMessageSize​(java.lang.String topic)
                                     throws PulsarAdminException
        Get the max message size for specified topic.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • getMaxMessageSizeAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxMessageSizeAsync​(java.lang.String topic)
        Get the max message size for specified topic asynchronously.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • setMaxMessageSize

        void setMaxMessageSize​(java.lang.String topic,
                               int maxMessageSize)
                        throws PulsarAdminException
        Set the max message size for specified topic.
        Parameters:
        topic - Topic name
        maxMessageSize - Max message size of producer
        Throws:
        PulsarAdminException - Unexpected error
      • setMaxMessageSizeAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setMaxMessageSizeAsync​(java.lang.String topic,
                                                                                      int maxMessageSize)
        Set the max message size for specified topic asynchronously.0 disables.
        Parameters:
        topic - Topic name
        maxMessageSize - Max message size of topic
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxMessageSize

        void removeMaxMessageSize​(java.lang.String topic)
                           throws PulsarAdminException
        Remove the max message size for specified topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxMessageSizeAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxMessageSizeAsync​(java.lang.String topic)
        Remove the max message size for specified topic asynchronously.
        Parameters:
        topic - Topic name
      • getMaxConsumers

        java.lang.Integer getMaxConsumers​(java.lang.String topic)
                                   throws PulsarAdminException
        Get the max number of consumer for specified topic.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • getMaxConsumersAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxConsumersAsync​(java.lang.String topic)
        Get the max number of consumer for specified topic asynchronously.
        Parameters:
        topic - Topic name
        Returns:
        Configuration of bookkeeper persistence policies
        Throws:
        PulsarAdminException - Unexpected error
      • getMaxConsumers

        java.lang.Integer getMaxConsumers​(java.lang.String topic,
                                          boolean applied)
                                   throws PulsarAdminException
        Get the max number of consumer applied for specified topic.
        Parameters:
        topic -
        applied -
        Returns:
        Throws:
        PulsarAdminException
      • getMaxConsumersAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getMaxConsumersAsync​(java.lang.String topic,
                                                                                       boolean applied)
        Get the max number of consumer applied for specified topic asynchronously.
        Parameters:
        topic -
        applied -
        Returns:
      • setMaxConsumers

        void setMaxConsumers​(java.lang.String topic,
                             int maxConsumers)
                      throws PulsarAdminException
        Set the max number of consumer for specified topic.
        Parameters:
        topic - Topic name
        maxConsumers - Max number of consumer
        Throws:
        PulsarAdminException - Unexpected error
      • setMaxConsumersAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setMaxConsumersAsync​(java.lang.String topic,
                                                                                    int maxConsumers)
        Set the max number of consumer for specified topic asynchronously.
        Parameters:
        topic - Topic name
        maxConsumers - Max number of consumer
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxConsumers

        void removeMaxConsumers​(java.lang.String topic)
                         throws PulsarAdminException
        Remove the max number of consumer for specified topic.
        Parameters:
        topic - Topic name
        Throws:
        PulsarAdminException - Unexpected error
      • removeMaxConsumersAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeMaxConsumersAsync​(java.lang.String topic)
        Remove the max number of consumer for specified topic asynchronously.
        Parameters:
        topic - Topic name
      • getDeduplicationSnapshotInterval

        java.lang.Integer getDeduplicationSnapshotInterval​(java.lang.String topic)
                                                    throws PulsarAdminException
        Get the deduplication snapshot interval for specified topic.
        Parameters:
        topic -
        Returns:
        Throws:
        PulsarAdminException
      • getDeduplicationSnapshotIntervalAsync

        java.util.concurrent.CompletableFuture<java.lang.Integer> getDeduplicationSnapshotIntervalAsync​(java.lang.String topic)
        Get the deduplication snapshot interval for specified topic asynchronously.
        Parameters:
        topic -
        Returns:
      • setDeduplicationSnapshotInterval

        void setDeduplicationSnapshotInterval​(java.lang.String topic,
                                              int interval)
                                       throws PulsarAdminException
        Set the deduplication snapshot interval for specified topic.
        Parameters:
        topic -
        interval -
        Throws:
        PulsarAdminException
      • setDeduplicationSnapshotIntervalAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setDeduplicationSnapshotIntervalAsync​(java.lang.String topic,
                                                                                                     int interval)
        Set the deduplication snapshot interval for specified topic asynchronously.
        Parameters:
        topic -
        interval -
        Returns:
      • removeDeduplicationSnapshotInterval

        void removeDeduplicationSnapshotInterval​(java.lang.String topic)
                                          throws PulsarAdminException
        Remove the deduplication snapshot interval for specified topic.
        Parameters:
        topic -
        Throws:
        PulsarAdminException
      • removeDeduplicationSnapshotIntervalAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeDeduplicationSnapshotIntervalAsync​(java.lang.String topic)
        Remove the deduplication snapshot interval for specified topic asynchronously.
        Parameters:
        topic -
        Returns:
      • setSubscriptionTypesEnabled

        void setSubscriptionTypesEnabled​(java.lang.String topic,
                                         java.util.Set<org.apache.pulsar.client.api.SubscriptionType> subscriptionTypesEnabled)
                                  throws PulsarAdminException
        Set is enable sub types.
        Parameters:
        topic -
        subscriptionTypesEnabled - is enable subTypes
        Throws:
        PulsarAdminException - Unexpected error
      • setSubscriptionTypesEnabledAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setSubscriptionTypesEnabledAsync​(java.lang.String topic,
                                                                                                java.util.Set<org.apache.pulsar.client.api.SubscriptionType> subscriptionTypesEnabled)
        Set is enable sub types asynchronously.
        Parameters:
        topic -
        subscriptionTypesEnabled - is enable subTypes
      • getSubscriptionTypesEnabled

        java.util.Set<org.apache.pulsar.client.api.SubscriptionType> getSubscriptionTypesEnabled​(java.lang.String topic)
                                                                                          throws PulsarAdminException
        Get is enable sub types.
        Parameters:
        topic - is topic for get is enable sub types
        Returns:
        set of enable sub types Set
        Throws:
        PulsarAdminException - Unexpected error
      • getSubscriptionTypesEnabledAsync

        java.util.concurrent.CompletableFuture<java.util.Set<org.apache.pulsar.client.api.SubscriptionType>> getSubscriptionTypesEnabledAsync​(java.lang.String topic)
        Get is enable sub types asynchronously.
        Parameters:
        topic - is topic for get is enable sub types
      • setSubscribeRate

        void setSubscribeRate​(java.lang.String topic,
                              SubscribeRate subscribeRate)
                       throws PulsarAdminException
        Set topic-subscribe-rate (topic will limit by subscribeRate).
        Parameters:
        topic -
        subscribeRate - consumer subscribe limit by this subscribeRate
        Throws:
        PulsarAdminException - Unexpected error
      • setSubscribeRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> setSubscribeRateAsync​(java.lang.String topic,
                                                                                     SubscribeRate subscribeRate)
        Set topic-subscribe-rate (topics will limit by subscribeRate) asynchronously.
        Parameters:
        topic -
        subscribeRate - consumer subscribe limit by this subscribeRate
      • getSubscribeRateAsync

        java.util.concurrent.CompletableFuture<SubscribeRate> getSubscribeRateAsync​(java.lang.String topic)
        Get topic-subscribe-rate asynchronously.

        Topic allow subscribe times per consumer in a period.

        Parameters:
        topic -
      • getSubscribeRate

        SubscribeRate getSubscribeRate​(java.lang.String topic,
                                       boolean applied)
                                throws PulsarAdminException
        Get applied topic-subscribe-rate (topics allow subscribe times per consumer in a period).
        Parameters:
        topic -
        Throws:
        PulsarAdminException - Unexpected error
      • getSubscribeRateAsync

        java.util.concurrent.CompletableFuture<SubscribeRate> getSubscribeRateAsync​(java.lang.String topic,
                                                                                    boolean applied)
        Get applied topic-subscribe-rate asynchronously.
        Parameters:
        topic -
      • removeSubscribeRate

        void removeSubscribeRate​(java.lang.String topic)
                          throws PulsarAdminException
        Remove topic-subscribe-rate.

        Remove topic subscribe rate

        Parameters:
        topic -
        Throws:
        PulsarAdminException - unexpected error
      • removeSubscribeRateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> removeSubscribeRateAsync​(java.lang.String topic)
                                                                                 throws PulsarAdminException
        Remove topic-subscribe-rate asynchronously.

        Remove topic subscribe rate

        Parameters:
        topic -
        Throws:
        PulsarAdminException - unexpected error
      • examineMessage

        org.apache.pulsar.client.api.Message<byte[]> examineMessage​(java.lang.String topic,
                                                                    java.lang.String initialPosition,
                                                                    long messagePosition)
                                                             throws PulsarAdminException
        Examine a specific message on a topic by position relative to the earliest or the latest message.
        Parameters:
        topic - Topic name
        initialPosition - Relative start position to examine message. It can be 'latest' or 'earliest'
        messagePosition - The position of messages (default 1)
        Throws:
        PulsarAdminException
      • examineMessageAsync

        java.util.concurrent.CompletableFuture<org.apache.pulsar.client.api.Message<byte[]>> examineMessageAsync​(java.lang.String topic,
                                                                                                                 java.lang.String initialPosition,
                                                                                                                 long messagePosition)
                                                                                                          throws PulsarAdminException
        Examine a specific message on a topic by position relative to the earliest or the latest message.
        Parameters:
        topic - Topic name
        initialPosition - Relative start position to examine message. It can be 'latest' or 'earliest'
        messagePosition - The position of messages (default 1)
        Throws:
        PulsarAdminException
      • truncateAsync

        java.util.concurrent.CompletableFuture<java.lang.Void> truncateAsync​(java.lang.String topic)
        Truncate a topic asynchronously.

        The latest ledger cannot be deleted.

        Parameters:
        topic - topic name
        Returns:
        a future that can be used to track when the topic is truncated