Class MutableReactiveMessageReaderSpec

java.lang.Object
org.apache.pulsar.reactive.client.api.MutableReactiveMessageReaderSpec
All Implemented Interfaces:
ReactiveMessageReaderSpec

public class MutableReactiveMessageReaderSpec extends Object implements ReactiveMessageReaderSpec
Mutable spec for a ReactiveMessageReader.
  • Constructor Details

    • MutableReactiveMessageReaderSpec

      public MutableReactiveMessageReaderSpec()
      Constructs a default MutableReactiveMessageReaderSpec.
    • MutableReactiveMessageReaderSpec

      public MutableReactiveMessageReaderSpec(ReactiveMessageReaderSpec readerSpec)
      Constructs a MutableReactiveMessageReaderSpec from another ReactiveMessageReaderSpec.
      Parameters:
      readerSpec - the spec to construct from
  • Method Details

    • getTopicNames

      public List<String> getTopicNames()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets the topics to read from.
      Specified by:
      getTopicNames in interface ReactiveMessageReaderSpec
      Returns:
      the topic names
      See Also:
      • ReaderBuilder.topics(List)
    • setTopicNames

      public void setTopicNames(List<String> topicNames)
      Sets the topics to read from.
      Parameters:
      topicNames - the topic names
    • getReaderName

      public String getReaderName()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets the reader name.
      Specified by:
      getReaderName in interface ReactiveMessageReaderSpec
      Returns:
      the reader name
      See Also:
      • ReaderBuilder.readerName(String)
    • setReaderName

      public void setReaderName(String readerName)
      Sets the reader name.
      Parameters:
      readerName - the reader name
    • getSubscriptionName

      public String getSubscriptionName()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets the subscription name.
      Specified by:
      getSubscriptionName in interface ReactiveMessageReaderSpec
      Returns:
      the name of the subscription
      See Also:
      • ReaderBuilder.subscriptionName(String)
    • setSubscriptionName

      public void setSubscriptionName(String subscriptionName)
      Sets the subscription name.
      Parameters:
      subscriptionName - the name of the subscription
    • getGeneratedSubscriptionNamePrefix

      public String getGeneratedSubscriptionNamePrefix()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets the generated subscription name prefix. The default prefix is "reader".
      Specified by:
      getGeneratedSubscriptionNamePrefix in interface ReactiveMessageReaderSpec
      Returns:
      the generated subscription name prefix
      See Also:
      • ReaderBuilder.subscriptionRolePrefix(String)
    • setGeneratedSubscriptionNamePrefix

      public void setGeneratedSubscriptionNamePrefix(String generatedSubscriptionNamePrefix)
      Sets the generated subscription name prefix.
      Parameters:
      generatedSubscriptionNamePrefix - the generated subscription name prefix
    • getReceiverQueueSize

      public Integer getReceiverQueueSize()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets the size of the reader receive queue.
      Specified by:
      getReceiverQueueSize in interface ReactiveMessageReaderSpec
      Returns:
      the size of the reader receive queue
      See Also:
      • ReaderBuilder.receiverQueueSize(int)
    • setReceiverQueueSize

      public void setReceiverQueueSize(Integer receiverQueueSize)
      Sets the size of the reader receive queue.
      Parameters:
      receiverQueueSize - the size of the reader receive queue
    • getReadCompacted

      public Boolean getReadCompacted()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets whether to read messages from the compacted topic rather than reading the full message backlog of the topic.
      Specified by:
      getReadCompacted in interface ReactiveMessageReaderSpec
      Returns:
      true if messages are read from the compacted topic
      See Also:
      • ReaderBuilder.readCompacted(boolean)
    • setReadCompacted

      public void setReadCompacted(Boolean readCompacted)
      Sets whether to read messages from the compacted topic rather than reading the full message backlog of the topic.
      Parameters:
      readCompacted - true to read messages from the compacted topic
    • getKeyHashRanges

      public List<org.apache.pulsar.client.api.Range> getKeyHashRanges()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets the key hash ranges of the reader.
      Specified by:
      getKeyHashRanges in interface ReactiveMessageReaderSpec
      Returns:
      the key hash ranges
      See Also:
      • ReaderBuilder.keyHashRange(Range...)
    • setKeyHashRanges

      public void setKeyHashRanges(List<org.apache.pulsar.client.api.Range> keyHashRanges)
      Sets the key hash ranges of the reader.
      Parameters:
      keyHashRanges - the key hash ranges
    • getCryptoKeyReader

      public org.apache.pulsar.client.api.CryptoKeyReader getCryptoKeyReader()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets the key reader to be used to decrypt the message payloads.
      Specified by:
      getCryptoKeyReader in interface ReactiveMessageReaderSpec
      Returns:
      the key reader to be used to decrypt the message payloads
      See Also:
      • ReaderBuilder.cryptoKeyReader(org.apache.pulsar.client.api.CryptoKeyReader)
    • setCryptoKeyReader

      public void setCryptoKeyReader(org.apache.pulsar.client.api.CryptoKeyReader cryptoKeyReader)
      Sets the key reader to be used to decrypt the message payloads.
      Parameters:
      cryptoKeyReader - the key reader to be used to decrypt the message payloads
    • getCryptoFailureAction

      public org.apache.pulsar.client.api.ConsumerCryptoFailureAction getCryptoFailureAction()
      Description copied from interface: ReactiveMessageReaderSpec
      Gets the action the reader will take in case of decryption failures.
      Specified by:
      getCryptoFailureAction in interface ReactiveMessageReaderSpec
      Returns:
      the action the reader will take in case of decryption failures
      See Also:
      • ReaderBuilder.cryptoFailureAction(org.apache.pulsar.client.api.ConsumerCryptoFailureAction)
    • setCryptoFailureAction

      public void setCryptoFailureAction(org.apache.pulsar.client.api.ConsumerCryptoFailureAction cryptoFailureAction)
      Sets the action the reader will take in case of decryption failures.
      Parameters:
      cryptoFailureAction - the action the reader will take in case of decryption failures
    • applySpec

      public void applySpec(ReactiveMessageReaderSpec readerSpec)
      Updates this spec from the defined values of another spec.
      Parameters:
      readerSpec - the spec from which to update