Enum Class SubscriptionType

java.lang.Object
java.lang.Enum<SubscriptionType>
org.apache.pulsar.client.api.SubscriptionType
All Implemented Interfaces:
Serializable, Comparable<SubscriptionType>, Constable

@Public @Stable public enum SubscriptionType extends Enum<SubscriptionType>
Types of subscription supported by Pulsar.
  • Nested Class Summary

    Nested classes/interfaces inherited from class java.lang.Enum

    Enum.EnumDesc<E extends Enum<E>>
  • Enum Constant Summary

    Enum Constants
    Enum Constant
    Description
    There can be only 1 consumer on the same topic with the same subscription name.
    Multiple consumer will be able to use the same subscription name but only 1 consumer will receive the messages.
    Multiple consumer will be able to use the same subscription and all messages with the same key will be dispatched to only one consumer.
    Multiple consumer will be able to use the same subscription name and the messages will be dispatched according to a round-robin rotation between the connected consumers.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the enum constant of this class with the specified name.
    Returns an array containing the constants of this enum class, in the order they are declared.

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Enum Constant Details

    • Exclusive

      public static final SubscriptionType Exclusive
      There can be only 1 consumer on the same topic with the same subscription name.
    • Shared

      public static final SubscriptionType Shared
      Multiple consumer will be able to use the same subscription name and the messages will be dispatched according to a round-robin rotation between the connected consumers.

      In this mode, the consumption order is not guaranteed.

    • Failover

      public static final SubscriptionType Failover
      Multiple consumer will be able to use the same subscription name but only 1 consumer will receive the messages. If that consumer disconnects, one of the other connected consumers will start receiving messages.

      In failover mode, the consumption ordering is guaranteed.

      In case of partitioned topics, the ordering is guaranteed on a per-partition basis. The partitions assignments will be split across the available consumers. On each partition, at most one consumer will be active at a given point in time.

    • Key_Shared

      public static final SubscriptionType Key_Shared
      Multiple consumer will be able to use the same subscription and all messages with the same key will be dispatched to only one consumer.

      Use ordering_key to overwrite the message key for message ordering.

  • Method Details

    • values

      public static SubscriptionType[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static SubscriptionType valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null