Class MutableReactiveMessageConsumerSpec
- java.lang.Object
-
- org.apache.pulsar.reactive.client.api.MutableReactiveMessageConsumerSpec
-
- All Implemented Interfaces:
ReactiveMessageConsumerSpec
public class MutableReactiveMessageConsumerSpec extends java.lang.Object implements ReactiveMessageConsumerSpec
Mutable spec for aReactiveMessageConsumer
.
-
-
Constructor Summary
Constructors Constructor Description MutableReactiveMessageConsumerSpec()
Constructs a default MutableReactiveMessageConsumerSpec.MutableReactiveMessageConsumerSpec(ReactiveMessageConsumerSpec consumerSpec)
Constructs a MutableReactiveMessageConsumerSpec from anotherReactiveMessageConsumerSpec
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
applySpec(ReactiveMessageConsumerSpec consumerSpec)
Updates this spec from the defined values of another spec.java.lang.Boolean
getAcknowledgeAsynchronously()
Gets whether to ignore the acknowledge operation completion and make it asynchronous from the message consuming processing to improve performance by allowing the acknowledges and message processing to interleave.java.time.Duration
getAcknowledgementsGroupTime()
Gets the duration used to group acknowledgements.reactor.core.scheduler.Scheduler
getAcknowledgeScheduler()
Gets the scheduler to use to handle acknowledgements.java.time.Duration
getAckTimeout()
Gets the timeout duration for unacknowledged messages.java.time.Duration
getAckTimeoutTickTime()
Gets the tick time of the ack-timeout redelivery.java.lang.Boolean
getAutoAckOldestChunkedMessageOnQueueFull()
Gets whether to automatically acknowledge pending chunked messages when maxPendingChunkedMessage is reached.java.lang.Boolean
getAutoUpdatePartitions()
Gets whether the consumer shall subscribe automatically to new partitions of partitioned topics.java.time.Duration
getAutoUpdatePartitionsInterval()
Gets the interval of updating partitions when autoUpdatePartitions is enabled.java.lang.Boolean
getBatchIndexAckEnabled()
Gets whether batch index acknowledgement is enabled.java.lang.String
getConsumerName()
Gets the consumer name.org.apache.pulsar.client.api.ConsumerCryptoFailureAction
getCryptoFailureAction()
Gets the action the consumer will take in case of decryption failures.org.apache.pulsar.client.api.CryptoKeyReader
getCryptoKeyReader()
Gets the key reader to be used to decrypt the message payloads.org.apache.pulsar.client.api.DeadLetterPolicy
getDeadLetterPolicy()
Gets the dead letter policy for the consumer.java.time.Duration
getExpireTimeOfIncompleteChunkedMessage()
Gets the time interval to expire incomplete chunks if a consumer fails to receive all the chunks.org.apache.pulsar.client.api.KeySharedPolicy
getKeySharedPolicy()
Gets the policy used forSubscriptionType.Key_Shared
subscriptions.java.lang.Integer
getMaxPendingChunkedMessage()
Gets the maximum number of messages in the queue holding pending chunked messages.java.lang.Integer
getMaxTotalReceiverQueueSizeAcrossPartitions()
Gets the max total receiver queue size across partitions.java.time.Duration
getNegativeAckRedeliveryDelay()
Gets the delay to wait before re-delivering messages that have failed to be processed.java.lang.Integer
getPriorityLevel()
Gets the priority level for the consumer to which a broker gives more priority while dispatching messages.java.util.Map<java.lang.String,java.lang.String>
getProperties()
Gets the consumer properties.java.lang.Boolean
getReadCompacted()
Gets whether to read messages from the compacted topic rather than reading the full message backlog of the topic.java.lang.Integer
getReceiverQueueSize()
Gets the size of the consumer receive queue.java.lang.Boolean
getReplicateSubscriptionState()
Gets whether the subscription shall be replicated.java.lang.Boolean
getRetryLetterTopicEnable()
Gets whether the retries are enabled.org.apache.pulsar.client.api.SubscriptionInitialPosition
getSubscriptionInitialPosition()
Gets the subscription initial position.org.apache.pulsar.client.api.SubscriptionMode
getSubscriptionMode()
Gets the subscription mode.java.lang.String
getSubscriptionName()
Gets the subscription name.java.util.Map<java.lang.String,java.lang.String>
getSubscriptionProperties()
Gets the properties for the subscription.org.apache.pulsar.client.api.SubscriptionType
getSubscriptionType()
Gets the subscription type.java.util.List<java.lang.String>
getTopicNames()
Gets the topics to subscribe to.java.util.regex.Pattern
getTopicsPattern()
Gets the topics pattern of the topics to subscribe to.java.time.Duration
getTopicsPatternAutoDiscoveryPeriod()
Gets the topics auto discovery period when using a topic pattern.org.apache.pulsar.client.api.RegexSubscriptionMode
getTopicsPatternSubscriptionMode()
Gets the type of topics to subscribe to when using a topic pattern - Persistent, Non-Persistent, or both.void
setAcknowledgeAsynchronously(java.lang.Boolean acknowledgeAsynchronously)
Sets whether to ignore the acknowledge operation completion and make it asynchronous from the message consuming processing to improve performance by allowing the acknowledges and message processing to interleave.void
setAcknowledgementsGroupTime(java.time.Duration acknowledgementsGroupTime)
Sets the duration used to group acknowledgements.void
setAcknowledgeScheduler(reactor.core.scheduler.Scheduler acknowledgeScheduler)
Sets the scheduler to use to handle acknowledgements.void
setAckTimeout(java.time.Duration ackTimeout)
Sets the timeout duration for unacknowledged messages.void
setAckTimeoutTickTime(java.time.Duration ackTimeoutTickTime)
Sets the tick time of the ack-timeout redelivery.void
setAutoAckOldestChunkedMessageOnQueueFull(java.lang.Boolean autoAckOldestChunkedMessageOnQueueFull)
Sets whether to automatically acknowledge pending chunked messages when maxPendingChunkedMessage is reached.void
setAutoUpdatePartitions(java.lang.Boolean autoUpdatePartitions)
Sets whether the consumer shall subscribe automatically to new partitions of partitioned topics.void
setAutoUpdatePartitionsInterval(java.time.Duration autoUpdatePartitionsInterval)
Sets the interval of updating partitions when autoUpdatePartitions is enabled.void
setBatchIndexAckEnabled(java.lang.Boolean batchIndexAckEnabled)
Sets whether batch index acknowledgement is enabled.void
setConsumerName(java.lang.String consumerName)
Sets the consumer name.void
setCryptoFailureAction(org.apache.pulsar.client.api.ConsumerCryptoFailureAction cryptoFailureAction)
Sets the action the consumer will take in case of decryption failures.void
setCryptoKeyReader(org.apache.pulsar.client.api.CryptoKeyReader cryptoKeyReader)
Sets the key reader to be used to decrypt the message payloads.void
setDeadLetterPolicy(org.apache.pulsar.client.api.DeadLetterPolicy deadLetterPolicy)
Sets the dead letter policy for the consumer.void
setExpireTimeOfIncompleteChunkedMessage(java.time.Duration expireTimeOfIncompleteChunkedMessage)
Sets the time interval to expire incomplete chunks if a consumer fails to receive all the chunks.void
setKeySharedPolicy(org.apache.pulsar.client.api.KeySharedPolicy keySharedPolicy)
Sets the policy used forSubscriptionType.Key_Shared
subscriptions.void
setMaxPendingChunkedMessage(java.lang.Integer maxPendingChunkedMessage)
Sets the maximum number of messages in the queue holding pending chunked messages.void
setMaxTotalReceiverQueueSizeAcrossPartitions(java.lang.Integer maxTotalReceiverQueueSizeAcrossPartitions)
Sets the maximum total receiver queue size across partitions.void
setNegativeAckRedeliveryDelay(java.time.Duration negativeAckRedeliveryDelay)
Sets the delay to wait before re-delivering messages that have failed to be processed.void
setPriorityLevel(java.lang.Integer priorityLevel)
Sets the priority level for the consumer to which a broker gives more priority while dispatching messages.void
setProperties(java.util.Map<java.lang.String,java.lang.String> properties)
Sets the consumer properties.void
setReadCompacted(java.lang.Boolean readCompacted)
Sets whether to read messages from the compacted topic rather than reading the full message backlog of the topic.void
setReceiverQueueSize(java.lang.Integer receiverQueueSize)
Sets the size of the consumer receive queue.void
setReplicateSubscriptionState(java.lang.Boolean replicateSubscriptionState)
Sets whether the subscription shall be replicated.void
setRetryLetterTopicEnable(java.lang.Boolean retryLetterTopicEnable)
Sets whether the retries are enabled.void
setSubscriptionInitialPosition(org.apache.pulsar.client.api.SubscriptionInitialPosition subscriptionInitialPosition)
Sets the subscription initial position.void
setSubscriptionMode(org.apache.pulsar.client.api.SubscriptionMode subscriptionMode)
Sets the subscription mode.void
setSubscriptionName(java.lang.String subscriptionName)
Sets the subscription name.void
setSubscriptionProperties(java.util.Map<java.lang.String,java.lang.String> subscriptionProperties)
Sets the properties for the subscription.void
setSubscriptionType(org.apache.pulsar.client.api.SubscriptionType subscriptionType)
Sets the subscription type.void
setTopicNames(java.util.List<java.lang.String> topicNames)
Sets the topics to subscribe to.void
setTopicsPattern(java.util.regex.Pattern topicsPattern)
Sets the topics pattern of the topics to subscribe to.void
setTopicsPatternAutoDiscoveryPeriod(java.time.Duration topicsPatternAutoDiscoveryPeriod)
Sets the topics auto discovery period when using a topic pattern.void
setTopicsPatternSubscriptionMode(org.apache.pulsar.client.api.RegexSubscriptionMode topicsPatternSubscriptionMode)
Sets the type of topics to subscribe to when using a topic pattern - Persistent, Non-Persistent, or both.
-
-
-
Constructor Detail
-
MutableReactiveMessageConsumerSpec
public MutableReactiveMessageConsumerSpec()
Constructs a default MutableReactiveMessageConsumerSpec.
-
MutableReactiveMessageConsumerSpec
public MutableReactiveMessageConsumerSpec(ReactiveMessageConsumerSpec consumerSpec)
Constructs a MutableReactiveMessageConsumerSpec from anotherReactiveMessageConsumerSpec
.- Parameters:
consumerSpec
- the spec to construct from
-
-
Method Detail
-
getTopicNames
public java.util.List<java.lang.String> getTopicNames()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the topics to subscribe to.- Specified by:
getTopicNames
in interfaceReactiveMessageConsumerSpec
- Returns:
- the topic names
- See Also:
ConsumerBuilder.topics(java.util.List<java.lang.String>)
-
setTopicNames
public void setTopicNames(java.util.List<java.lang.String> topicNames)
Sets the topics to subscribe to.- Parameters:
topicNames
- the topics to subscribe to.
-
getTopicsPattern
public java.util.regex.Pattern getTopicsPattern()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the topics pattern of the topics to subscribe to.- Specified by:
getTopicsPattern
in interfaceReactiveMessageConsumerSpec
- Returns:
- the topics pattern
- See Also:
ConsumerBuilder.topicsPattern(Pattern)
-
setTopicsPattern
public void setTopicsPattern(java.util.regex.Pattern topicsPattern)
Sets the topics pattern of the topics to subscribe to.- Parameters:
topicsPattern
- the topics pattern of the topics to subscribe to.
-
getTopicsPatternSubscriptionMode
public org.apache.pulsar.client.api.RegexSubscriptionMode getTopicsPatternSubscriptionMode()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the type of topics to subscribe to when using a topic pattern - Persistent, Non-Persistent, or both.- Specified by:
getTopicsPatternSubscriptionMode
in interfaceReactiveMessageConsumerSpec
- Returns:
- the pattern subscription mode
- See Also:
ConsumerBuilder.subscriptionTopicsMode(org.apache.pulsar.client.api.RegexSubscriptionMode)
-
setTopicsPatternSubscriptionMode
public void setTopicsPatternSubscriptionMode(org.apache.pulsar.client.api.RegexSubscriptionMode topicsPatternSubscriptionMode)
Sets the type of topics to subscribe to when using a topic pattern - Persistent, Non-Persistent, or both.- Parameters:
topicsPatternSubscriptionMode
- type of topics to subscribe to
-
getTopicsPatternAutoDiscoveryPeriod
public java.time.Duration getTopicsPatternAutoDiscoveryPeriod()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the topics auto discovery period when using a topic pattern.- Specified by:
getTopicsPatternAutoDiscoveryPeriod
in interfaceReactiveMessageConsumerSpec
- Returns:
- the topics discovery period
- See Also:
ConsumerBuilder.patternAutoDiscoveryPeriod(int)
-
setTopicsPatternAutoDiscoveryPeriod
public void setTopicsPatternAutoDiscoveryPeriod(java.time.Duration topicsPatternAutoDiscoveryPeriod)
Sets the topics auto discovery period when using a topic pattern.- Parameters:
topicsPatternAutoDiscoveryPeriod
- the topics auto discovery period
-
getSubscriptionName
public java.lang.String getSubscriptionName()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the subscription name.- Specified by:
getSubscriptionName
in interfaceReactiveMessageConsumerSpec
- Returns:
- the name of the subscription
- See Also:
ConsumerBuilder.subscriptionName(java.lang.String)
-
setSubscriptionName
public void setSubscriptionName(java.lang.String subscriptionName)
Sets the subscription name.- Parameters:
subscriptionName
- the subscription name
-
getSubscriptionMode
public org.apache.pulsar.client.api.SubscriptionMode getSubscriptionMode()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the subscription mode.- Specified by:
getSubscriptionMode
in interfaceReactiveMessageConsumerSpec
- Returns:
- the subscription mode
- See Also:
ConsumerBuilder.subscriptionMode(org.apache.pulsar.client.api.SubscriptionMode)
-
setSubscriptionMode
public void setSubscriptionMode(org.apache.pulsar.client.api.SubscriptionMode subscriptionMode)
Sets the subscription mode.- Parameters:
subscriptionMode
- the subscription mode
-
getSubscriptionType
public org.apache.pulsar.client.api.SubscriptionType getSubscriptionType()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the subscription type.- Specified by:
getSubscriptionType
in interfaceReactiveMessageConsumerSpec
- Returns:
- the subscription type
- See Also:
ConsumerBuilder.subscriptionType(org.apache.pulsar.client.api.SubscriptionType)
-
setSubscriptionType
public void setSubscriptionType(org.apache.pulsar.client.api.SubscriptionType subscriptionType)
Sets the subscription type.- Parameters:
subscriptionType
- the subscription type
-
getSubscriptionInitialPosition
public org.apache.pulsar.client.api.SubscriptionInitialPosition getSubscriptionInitialPosition()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the subscription initial position.- Specified by:
getSubscriptionInitialPosition
in interfaceReactiveMessageConsumerSpec
- Returns:
- the position where to initialize a newly created subscription
- See Also:
ConsumerBuilder.subscriptionInitialPosition(org.apache.pulsar.client.api.SubscriptionInitialPosition)
-
setSubscriptionInitialPosition
public void setSubscriptionInitialPosition(org.apache.pulsar.client.api.SubscriptionInitialPosition subscriptionInitialPosition)
Sets the subscription initial position.- Parameters:
subscriptionInitialPosition
- the subscription initial position
-
getKeySharedPolicy
public org.apache.pulsar.client.api.KeySharedPolicy getKeySharedPolicy()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the policy used forSubscriptionType.Key_Shared
subscriptions.- Specified by:
getKeySharedPolicy
in interfaceReactiveMessageConsumerSpec
- Returns:
- the key-shared policy
- See Also:
ConsumerBuilder.keySharedPolicy(org.apache.pulsar.client.api.KeySharedPolicy)
-
setKeySharedPolicy
public void setKeySharedPolicy(org.apache.pulsar.client.api.KeySharedPolicy keySharedPolicy)
Sets the policy used forSubscriptionType.Key_Shared
subscriptions.- Parameters:
keySharedPolicy
- the key-shared policy to use
-
getReplicateSubscriptionState
public java.lang.Boolean getReplicateSubscriptionState()
Description copied from interface:ReactiveMessageConsumerSpec
Gets whether the subscription shall be replicated.- Specified by:
getReplicateSubscriptionState
in interfaceReactiveMessageConsumerSpec
- Returns:
- true if the subscription is replicated
- See Also:
ConsumerBuilder.replicateSubscriptionState(boolean)
-
setReplicateSubscriptionState
public void setReplicateSubscriptionState(java.lang.Boolean replicateSubscriptionState)
Sets whether the subscription shall be replicated.- Parameters:
replicateSubscriptionState
- true to replicate the subscription
-
getSubscriptionProperties
public java.util.Map<java.lang.String,java.lang.String> getSubscriptionProperties()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the properties for the subscription.- Specified by:
getSubscriptionProperties
in interfaceReactiveMessageConsumerSpec
- Returns:
- the subscription properties
- See Also:
ConsumerBuilder.subscriptionProperties(java.util.Map<java.lang.String, java.lang.String>)
-
setSubscriptionProperties
public void setSubscriptionProperties(java.util.Map<java.lang.String,java.lang.String> subscriptionProperties)
Sets the properties for the subscription.- Parameters:
subscriptionProperties
- the subscription properties
-
getConsumerName
public java.lang.String getConsumerName()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the consumer name.- Specified by:
getConsumerName
in interfaceReactiveMessageConsumerSpec
- Returns:
- the consumer name
- See Also:
ConsumerBuilder.consumerName(java.lang.String)
-
setConsumerName
public void setConsumerName(java.lang.String consumerName)
Sets the consumer name.- Parameters:
consumerName
- the consumer name
-
getProperties
public java.util.Map<java.lang.String,java.lang.String> getProperties()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the consumer properties.- Specified by:
getProperties
in interfaceReactiveMessageConsumerSpec
- Returns:
- the consumer properties
- See Also:
ConsumerBuilder.properties(java.util.Map<java.lang.String, java.lang.String>)
-
setProperties
public void setProperties(java.util.Map<java.lang.String,java.lang.String> properties)
Sets the consumer properties.- Parameters:
properties
- the consumer properties
-
getPriorityLevel
public java.lang.Integer getPriorityLevel()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the priority level for the consumer to which a broker gives more priority while dispatching messages.- Specified by:
getPriorityLevel
in interfaceReactiveMessageConsumerSpec
- Returns:
- the priority level of the consumer
- See Also:
ConsumerBuilder.priorityLevel(int)
-
setPriorityLevel
public void setPriorityLevel(java.lang.Integer priorityLevel)
Sets the priority level for the consumer to which a broker gives more priority while dispatching messages.- Parameters:
priorityLevel
- the priority level of the consumer
-
getReadCompacted
public java.lang.Boolean getReadCompacted()
Description copied from interface:ReactiveMessageConsumerSpec
Gets whether to read messages from the compacted topic rather than reading the full message backlog of the topic.- Specified by:
getReadCompacted
in interfaceReactiveMessageConsumerSpec
- Returns:
- true if messages are read from the compacted topic
- See Also:
ConsumerBuilder.readCompacted(boolean)
-
setReadCompacted
public void setReadCompacted(java.lang.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
-
getBatchIndexAckEnabled
public java.lang.Boolean getBatchIndexAckEnabled()
Description copied from interface:ReactiveMessageConsumerSpec
Gets whether batch index acknowledgement is enabled.- Specified by:
getBatchIndexAckEnabled
in interfaceReactiveMessageConsumerSpec
- Returns:
- true if batch index acknowledgement is enabled
- See Also:
ConsumerBuilder.enableBatchIndexAcknowledgment(boolean)
-
setBatchIndexAckEnabled
public void setBatchIndexAckEnabled(java.lang.Boolean batchIndexAckEnabled)
Sets whether batch index acknowledgement is enabled.- Parameters:
batchIndexAckEnabled
- true to enable batch index acknowledgement
-
getAckTimeout
public java.time.Duration getAckTimeout()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the timeout duration for unacknowledged messages.- Specified by:
getAckTimeout
in interfaceReactiveMessageConsumerSpec
- Returns:
- the timeout duration for unacknowledged messages
- See Also:
ConsumerBuilder.ackTimeout(long, java.util.concurrent.TimeUnit)
-
setAckTimeout
public void setAckTimeout(java.time.Duration ackTimeout)
Sets the timeout duration for unacknowledged messages.- Parameters:
ackTimeout
- the timeout duration for unacknowledged messages
-
getAckTimeoutTickTime
public java.time.Duration getAckTimeoutTickTime()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the tick time of the ack-timeout redelivery.- Specified by:
getAckTimeoutTickTime
in interfaceReactiveMessageConsumerSpec
- Returns:
- the tick time of the ack-timeout redelivery
- See Also:
ConsumerBuilder.ackTimeoutTickTime(long, java.util.concurrent.TimeUnit)
-
setAckTimeoutTickTime
public void setAckTimeoutTickTime(java.time.Duration ackTimeoutTickTime)
Sets the tick time of the ack-timeout redelivery.- Parameters:
ackTimeoutTickTime
- the tick time of the ack-timeout redelivery
-
getAcknowledgementsGroupTime
public java.time.Duration getAcknowledgementsGroupTime()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the duration used to group acknowledgements.- Specified by:
getAcknowledgementsGroupTime
in interfaceReactiveMessageConsumerSpec
- Returns:
- the duration used to group acknowledgements
- See Also:
ConsumerBuilder.acknowledgmentGroupTime(long, java.util.concurrent.TimeUnit)
-
setAcknowledgementsGroupTime
public void setAcknowledgementsGroupTime(java.time.Duration acknowledgementsGroupTime)
Sets the duration used to group acknowledgements.- Parameters:
acknowledgementsGroupTime
- the duration used to group acknowledgements
-
getAcknowledgeAsynchronously
public java.lang.Boolean getAcknowledgeAsynchronously()
Description copied from interface:ReactiveMessageConsumerSpec
Gets whether to ignore the acknowledge operation completion and make it asynchronous from the message consuming processing to improve performance by allowing the acknowledges and message processing to interleave.- Specified by:
getAcknowledgeAsynchronously
in interfaceReactiveMessageConsumerSpec
- Returns:
- true if the acknowledge operation completion is ignored
-
setAcknowledgeAsynchronously
public void setAcknowledgeAsynchronously(java.lang.Boolean acknowledgeAsynchronously)
Sets whether to ignore the acknowledge operation completion and make it asynchronous from the message consuming processing to improve performance by allowing the acknowledges and message processing to interleave.- Parameters:
acknowledgeAsynchronously
- true to ignore the acknowledge operation completion
-
getAcknowledgeScheduler
public reactor.core.scheduler.Scheduler getAcknowledgeScheduler()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the scheduler to use to handle acknowledgements.- Specified by:
getAcknowledgeScheduler
in interfaceReactiveMessageConsumerSpec
- Returns:
- the scheduler to use to handle acknowledgements
-
setAcknowledgeScheduler
public void setAcknowledgeScheduler(reactor.core.scheduler.Scheduler acknowledgeScheduler)
Sets the scheduler to use to handle acknowledgements.- Parameters:
acknowledgeScheduler
- the scheduler to use to handle acknowledgements
-
getNegativeAckRedeliveryDelay
public java.time.Duration getNegativeAckRedeliveryDelay()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the delay to wait before re-delivering messages that have failed to be processed.- Specified by:
getNegativeAckRedeliveryDelay
in interfaceReactiveMessageConsumerSpec
- Returns:
- the redelivery delay for failed messages
- See Also:
ConsumerBuilder.negativeAckRedeliveryDelay(long, java.util.concurrent.TimeUnit)
-
setNegativeAckRedeliveryDelay
public void setNegativeAckRedeliveryDelay(java.time.Duration negativeAckRedeliveryDelay)
Sets the delay to wait before re-delivering messages that have failed to be processed.- Parameters:
negativeAckRedeliveryDelay
- the redelivery delay for failed messages
-
getDeadLetterPolicy
public org.apache.pulsar.client.api.DeadLetterPolicy getDeadLetterPolicy()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the dead letter policy for the consumer.- Specified by:
getDeadLetterPolicy
in interfaceReactiveMessageConsumerSpec
- Returns:
- the dead letter policy
- See Also:
ConsumerBuilder.deadLetterPolicy(org.apache.pulsar.client.api.DeadLetterPolicy)
-
setDeadLetterPolicy
public void setDeadLetterPolicy(org.apache.pulsar.client.api.DeadLetterPolicy deadLetterPolicy)
Sets the dead letter policy for the consumer.- Parameters:
deadLetterPolicy
- the dead letter policy
-
getRetryLetterTopicEnable
public java.lang.Boolean getRetryLetterTopicEnable()
Description copied from interface:ReactiveMessageConsumerSpec
Gets whether the retries are enabled.- Specified by:
getRetryLetterTopicEnable
in interfaceReactiveMessageConsumerSpec
- Returns:
- true if retries are enabled
- See Also:
ConsumerBuilder.enableRetry(boolean)
-
setRetryLetterTopicEnable
public void setRetryLetterTopicEnable(java.lang.Boolean retryLetterTopicEnable)
Sets whether the retries are enabled.- Parameters:
retryLetterTopicEnable
- true to enable retries
-
getReceiverQueueSize
public java.lang.Integer getReceiverQueueSize()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the size of the consumer receive queue.- Specified by:
getReceiverQueueSize
in interfaceReactiveMessageConsumerSpec
- Returns:
- the size of the consumer receive queue
- See Also:
ConsumerBuilder.receiverQueueSize(int)
-
setReceiverQueueSize
public void setReceiverQueueSize(java.lang.Integer receiverQueueSize)
Sets the size of the consumer receive queue.- Parameters:
receiverQueueSize
- the size of the consumer receive queue
-
getMaxTotalReceiverQueueSizeAcrossPartitions
public java.lang.Integer getMaxTotalReceiverQueueSizeAcrossPartitions()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the max total receiver queue size across partitions.- Specified by:
getMaxTotalReceiverQueueSizeAcrossPartitions
in interfaceReactiveMessageConsumerSpec
- Returns:
- the max total receiver queue size across partitions
- See Also:
ConsumerBuilder.maxTotalReceiverQueueSizeAcrossPartitions(int)
-
setMaxTotalReceiverQueueSizeAcrossPartitions
public void setMaxTotalReceiverQueueSizeAcrossPartitions(java.lang.Integer maxTotalReceiverQueueSizeAcrossPartitions)
Sets the maximum total receiver queue size across partitions.- Parameters:
maxTotalReceiverQueueSizeAcrossPartitions
- the maximum total receiver queue size across partitions
-
getAutoUpdatePartitions
public java.lang.Boolean getAutoUpdatePartitions()
Description copied from interface:ReactiveMessageConsumerSpec
Gets whether the consumer shall subscribe automatically to new partitions of partitioned topics.- Specified by:
getAutoUpdatePartitions
in interfaceReactiveMessageConsumerSpec
- Returns:
- true if the consumer subscribes automatically to new partitions
- See Also:
ConsumerBuilder.autoUpdatePartitions(boolean)
-
setAutoUpdatePartitions
public void setAutoUpdatePartitions(java.lang.Boolean autoUpdatePartitions)
Sets whether the consumer shall subscribe automatically to new partitions of partitioned topics.- Parameters:
autoUpdatePartitions
- true for the consumer to subscribe automatically to new partitions
-
getAutoUpdatePartitionsInterval
public java.time.Duration getAutoUpdatePartitionsInterval()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the interval of updating partitions when autoUpdatePartitions is enabled.- Specified by:
getAutoUpdatePartitionsInterval
in interfaceReactiveMessageConsumerSpec
- Returns:
- the interval between partitions updates
- See Also:
ConsumerBuilder.autoUpdatePartitionsInterval(int, java.util.concurrent.TimeUnit)
,ConsumerBuilder.autoUpdatePartitions(boolean)
-
setAutoUpdatePartitionsInterval
public void setAutoUpdatePartitionsInterval(java.time.Duration autoUpdatePartitionsInterval)
Sets the interval of updating partitions when autoUpdatePartitions is enabled.- Parameters:
autoUpdatePartitionsInterval
- the interval between partitions updates
-
getCryptoKeyReader
public org.apache.pulsar.client.api.CryptoKeyReader getCryptoKeyReader()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the key reader to be used to decrypt the message payloads.- Specified by:
getCryptoKeyReader
in interfaceReactiveMessageConsumerSpec
- Returns:
- the key reader to be used to decrypt the message payloads
- See Also:
ConsumerBuilder.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:ReactiveMessageConsumerSpec
Gets the action the consumer will take in case of decryption failures.- Specified by:
getCryptoFailureAction
in interfaceReactiveMessageConsumerSpec
- Returns:
- the action the consumer will take in case of decryption failures
- See Also:
ConsumerBuilder.cryptoFailureAction(org.apache.pulsar.client.api.ConsumerCryptoFailureAction)
-
setCryptoFailureAction
public void setCryptoFailureAction(org.apache.pulsar.client.api.ConsumerCryptoFailureAction cryptoFailureAction)
Sets the action the consumer will take in case of decryption failures.- Parameters:
cryptoFailureAction
- the action the consumer will take in case of decryption failures
-
getMaxPendingChunkedMessage
public java.lang.Integer getMaxPendingChunkedMessage()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the maximum number of messages in the queue holding pending chunked messages.- Specified by:
getMaxPendingChunkedMessage
in interfaceReactiveMessageConsumerSpec
- Returns:
- the maximum number of messages in the queue holding pending chunked
- See Also:
messages.
-
setMaxPendingChunkedMessage
public void setMaxPendingChunkedMessage(java.lang.Integer maxPendingChunkedMessage)
Sets the maximum number of messages in the queue holding pending chunked messages.- Parameters:
maxPendingChunkedMessage
- the maximum number of messages in the queue holding pending chunked messages
-
getAutoAckOldestChunkedMessageOnQueueFull
public java.lang.Boolean getAutoAckOldestChunkedMessageOnQueueFull()
Description copied from interface:ReactiveMessageConsumerSpec
Gets whether to automatically acknowledge pending chunked messages when maxPendingChunkedMessage is reached.- Specified by:
getAutoAckOldestChunkedMessageOnQueueFull
in interfaceReactiveMessageConsumerSpec
- Returns:
- true to acknowledge the messages, false to have them redelivered.
- See Also:
ConsumerBuilder.autoAckOldestChunkedMessageOnQueueFull(boolean)
,ConsumerBuilder.maxPendingChunkedMessage(int)
-
setAutoAckOldestChunkedMessageOnQueueFull
public void setAutoAckOldestChunkedMessageOnQueueFull(java.lang.Boolean autoAckOldestChunkedMessageOnQueueFull)
Sets whether to automatically acknowledge pending chunked messages when maxPendingChunkedMessage is reached.- Parameters:
autoAckOldestChunkedMessageOnQueueFull
- true to acknowledge the messages, false to have them redelivered
-
getExpireTimeOfIncompleteChunkedMessage
public java.time.Duration getExpireTimeOfIncompleteChunkedMessage()
Description copied from interface:ReactiveMessageConsumerSpec
Gets the time interval to expire incomplete chunks if a consumer fails to receive all the chunks.- Specified by:
getExpireTimeOfIncompleteChunkedMessage
in interfaceReactiveMessageConsumerSpec
- Returns:
- the time interval to expire incomplete chunks.
- See Also:
ConsumerBuilder.expireTimeOfIncompleteChunkedMessage(long, java.util.concurrent.TimeUnit)
-
setExpireTimeOfIncompleteChunkedMessage
public void setExpireTimeOfIncompleteChunkedMessage(java.time.Duration expireTimeOfIncompleteChunkedMessage)
Sets the time interval to expire incomplete chunks if a consumer fails to receive all the chunks.- Parameters:
expireTimeOfIncompleteChunkedMessage
- the time interval to expire incomplete chunks.
-
applySpec
public void applySpec(ReactiveMessageConsumerSpec consumerSpec)
Updates this spec from the defined values of another spec.- Parameters:
consumerSpec
- the spec from which to update
-
-