Class ImmutableReactiveMessageConsumerSpec
java.lang.Object
org.apache.pulsar.reactive.client.api.ImmutableReactiveMessageConsumerSpec
- All Implemented Interfaces:
ReactiveMessageConsumerSpec
public class ImmutableReactiveMessageConsumerSpec
extends Object
implements ReactiveMessageConsumerSpec
Immutable spec for a
ReactiveMessageConsumer.-
Constructor Summary
ConstructorsConstructorDescriptionImmutableReactiveMessageConsumerSpec(List<String> topicNames, Pattern topicsPattern, org.apache.pulsar.client.api.RegexSubscriptionMode topicsPatternSubscriptionMode, Duration topicsPatternAutoDiscoveryPeriod, String subscriptionName, org.apache.pulsar.client.api.SubscriptionMode subscriptionMode, org.apache.pulsar.client.api.SubscriptionType subscriptionType, org.apache.pulsar.client.api.SubscriptionInitialPosition subscriptionInitialPosition, org.apache.pulsar.client.api.KeySharedPolicy keySharedPolicy, Boolean replicateSubscriptionState, Map<String, String> subscriptionProperties, String consumerName, Map<String, String> properties, Integer priorityLevel, Boolean readCompacted, Boolean batchIndexAckEnabled, Duration ackTimeout, Duration ackTimeoutTickTime, Duration acknowledgementsGroupTime, Boolean acknowledgeAsynchronously, reactor.core.scheduler.Scheduler acknowledgeScheduler, Duration negativeAckRedeliveryDelay, org.apache.pulsar.client.api.DeadLetterPolicy deadLetterPolicy, Boolean retryLetterTopicEnable, Integer receiverQueueSize, Integer maxTotalReceiverQueueSizeAcrossPartitions, Boolean autoUpdatePartitions, Duration autoUpdatePartitionsInterval, org.apache.pulsar.client.api.CryptoKeyReader cryptoKeyReader, org.apache.pulsar.client.api.ConsumerCryptoFailureAction cryptoFailureAction, Integer maxPendingChunkedMessage, Boolean autoAckOldestChunkedMessageOnQueueFull, Duration expireTimeOfIncompleteChunkedMessage) Deprecated.Constructs a ImmutableReactiveMessageConsumerSpec from anotherReactiveMessageConsumerSpec. -
Method Summary
Modifier and TypeMethodDescriptionGets 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.Gets the duration used to group acknowledgements.reactor.core.scheduler.SchedulerGets the scheduler to use to handle acknowledgements.Gets the timeout duration for unacknowledged messages.org.apache.pulsar.client.api.RedeliveryBackoffGet the redelivery backoff policy for messages that are redelivered due to acknowledgement timeout.Gets the tick time of the ack-timeout redelivery.Gets whether to automatically acknowledge pending chunked messages when maxPendingChunkedMessage is reached.Gets whether the consumer shall subscribe automatically to new partitions of partitioned topics.Gets the interval of updating partitions when autoUpdatePartitions is enabled.Gets whether batch index acknowledgement is enabled.Gets the consumer name.org.apache.pulsar.client.api.ConsumerCryptoFailureActionGets the action the consumer will take in case of decryption failures.org.apache.pulsar.client.api.CryptoKeyReaderGets the key reader to be used to decrypt the message payloads.org.apache.pulsar.client.api.DeadLetterPolicyGets the dead letter policy for the consumer.Gets the time interval to expire incomplete chunks if a consumer fails to receive all the chunks.org.apache.pulsar.client.api.KeySharedPolicyGets the policy used forSubscriptionType.Key_Sharedsubscriptions.Gets the maximum number of messages in the queue holding pending chunked messages.Gets the max total receiver queue size across partitions.org.apache.pulsar.client.api.RedeliveryBackoffGet the negative ack redelivery backoff policy for messages that are negatively acknowledged.Gets the delay to wait before re-delivering messages that have failed to be processed.Gets the priority level for the consumer to which a broker gives more priority while dispatching messages.Gets the consumer properties.Gets whether to read messages from the compacted topic rather than reading the full message backlog of the topic.Gets the size of the consumer receive queue.Gets whether the subscription shall be replicated.Gets whether the retries are enabled.org.apache.pulsar.client.api.SubscriptionInitialPositionGets the subscription initial position.org.apache.pulsar.client.api.SubscriptionModeGets the subscription mode.Gets the subscription name.Gets the properties for the subscription.org.apache.pulsar.client.api.SubscriptionTypeGets the subscription type.Gets the topics to subscribe to.Gets the topics pattern of the topics to subscribe to.Gets the topics auto discovery period when using a topic pattern.org.apache.pulsar.client.api.RegexSubscriptionModeGets the type of topics to subscribe to when using a topic pattern - Persistent, Non-Persistent, or both.
-
Constructor Details
-
ImmutableReactiveMessageConsumerSpec
Constructs a ImmutableReactiveMessageConsumerSpec from anotherReactiveMessageConsumerSpec.- Parameters:
consumerSpec- the spec to construct from
-
-
Method Details
-
getTopicNames
Description copied from interface:ReactiveMessageConsumerSpecGets the topics to subscribe to.- Specified by:
getTopicNamesin interfaceReactiveMessageConsumerSpec- Returns:
- the topic names
- See Also:
-
ConsumerBuilder.topics(java.util.List<java.lang.String>)
-
getTopicsPattern
Description copied from interface:ReactiveMessageConsumerSpecGets the topics pattern of the topics to subscribe to.- Specified by:
getTopicsPatternin interfaceReactiveMessageConsumerSpec- Returns:
- the topics pattern
- See Also:
-
ConsumerBuilder.topicsPattern(Pattern)
-
getTopicsPatternSubscriptionMode
public org.apache.pulsar.client.api.RegexSubscriptionMode getTopicsPatternSubscriptionMode()Description copied from interface:ReactiveMessageConsumerSpecGets the type of topics to subscribe to when using a topic pattern - Persistent, Non-Persistent, or both.- Specified by:
getTopicsPatternSubscriptionModein interfaceReactiveMessageConsumerSpec- Returns:
- the pattern subscription mode
- See Also:
-
ConsumerBuilder.subscriptionTopicsMode(org.apache.pulsar.client.api.RegexSubscriptionMode)
-
getTopicsPatternAutoDiscoveryPeriod
Description copied from interface:ReactiveMessageConsumerSpecGets the topics auto discovery period when using a topic pattern.- Specified by:
getTopicsPatternAutoDiscoveryPeriodin interfaceReactiveMessageConsumerSpec- Returns:
- the topics discovery period
- See Also:
-
ConsumerBuilder.patternAutoDiscoveryPeriod(int)
-
getSubscriptionName
Description copied from interface:ReactiveMessageConsumerSpecGets the subscription name.- Specified by:
getSubscriptionNamein interfaceReactiveMessageConsumerSpec- Returns:
- the name of the subscription
- See Also:
-
ConsumerBuilder.subscriptionName(java.lang.String)
-
getSubscriptionMode
public org.apache.pulsar.client.api.SubscriptionMode getSubscriptionMode()Description copied from interface:ReactiveMessageConsumerSpecGets the subscription mode.- Specified by:
getSubscriptionModein interfaceReactiveMessageConsumerSpec- Returns:
- the subscription mode
- See Also:
-
ConsumerBuilder.subscriptionMode(org.apache.pulsar.client.api.SubscriptionMode)
-
getSubscriptionType
public org.apache.pulsar.client.api.SubscriptionType getSubscriptionType()Description copied from interface:ReactiveMessageConsumerSpecGets the subscription type.- Specified by:
getSubscriptionTypein interfaceReactiveMessageConsumerSpec- Returns:
- the subscription type
- See Also:
-
ConsumerBuilder.subscriptionType(org.apache.pulsar.client.api.SubscriptionType)
-
getSubscriptionInitialPosition
public org.apache.pulsar.client.api.SubscriptionInitialPosition getSubscriptionInitialPosition()Description copied from interface:ReactiveMessageConsumerSpecGets the subscription initial position.- Specified by:
getSubscriptionInitialPositionin interfaceReactiveMessageConsumerSpec- Returns:
- the position where to initialize a newly created subscription
- See Also:
-
ConsumerBuilder.subscriptionInitialPosition(org.apache.pulsar.client.api.SubscriptionInitialPosition)
-
getReplicateSubscriptionState
Description copied from interface:ReactiveMessageConsumerSpecGets whether the subscription shall be replicated.- Specified by:
getReplicateSubscriptionStatein interfaceReactiveMessageConsumerSpec- Returns:
- true if the subscription is replicated
- See Also:
-
ConsumerBuilder.replicateSubscriptionState(boolean)
-
getSubscriptionProperties
Description copied from interface:ReactiveMessageConsumerSpecGets the properties for the subscription.- Specified by:
getSubscriptionPropertiesin interfaceReactiveMessageConsumerSpec- Returns:
- the subscription properties
- See Also:
-
ConsumerBuilder.subscriptionProperties(java.util.Map<java.lang.String, java.lang.String>)
-
getConsumerName
Description copied from interface:ReactiveMessageConsumerSpecGets the consumer name.- Specified by:
getConsumerNamein interfaceReactiveMessageConsumerSpec- Returns:
- the consumer name
- See Also:
-
ConsumerBuilder.consumerName(java.lang.String)
-
getProperties
Description copied from interface:ReactiveMessageConsumerSpecGets the consumer properties.- Specified by:
getPropertiesin interfaceReactiveMessageConsumerSpec- Returns:
- the consumer properties
- See Also:
-
ConsumerBuilder.properties(java.util.Map<java.lang.String, java.lang.String>)
-
getPriorityLevel
Description copied from interface:ReactiveMessageConsumerSpecGets the priority level for the consumer to which a broker gives more priority while dispatching messages.- Specified by:
getPriorityLevelin interfaceReactiveMessageConsumerSpec- Returns:
- the priority level of the consumer
- See Also:
-
ConsumerBuilder.priorityLevel(int)
-
getReadCompacted
Description copied from interface:ReactiveMessageConsumerSpecGets whether to read messages from the compacted topic rather than reading the full message backlog of the topic.- Specified by:
getReadCompactedin interfaceReactiveMessageConsumerSpec- Returns:
- true if messages are read from the compacted topic
- See Also:
-
ConsumerBuilder.readCompacted(boolean)
-
getBatchIndexAckEnabled
Description copied from interface:ReactiveMessageConsumerSpecGets whether batch index acknowledgement is enabled.- Specified by:
getBatchIndexAckEnabledin interfaceReactiveMessageConsumerSpec- Returns:
- true if batch index acknowledgement is enabled
- See Also:
-
ConsumerBuilder.enableBatchIndexAcknowledgment(boolean)
-
getAckTimeout
Description copied from interface:ReactiveMessageConsumerSpecGets the timeout duration for unacknowledged messages.- Specified by:
getAckTimeoutin interfaceReactiveMessageConsumerSpec- Returns:
- the timeout duration for unacknowledged messages
- See Also:
-
ConsumerBuilder.ackTimeout(long, java.util.concurrent.TimeUnit)
-
getAckTimeoutTickTime
Description copied from interface:ReactiveMessageConsumerSpecGets the tick time of the ack-timeout redelivery.- Specified by:
getAckTimeoutTickTimein interfaceReactiveMessageConsumerSpec- Returns:
- the tick time of the ack-timeout redelivery
- See Also:
-
ConsumerBuilder.ackTimeoutTickTime(long, java.util.concurrent.TimeUnit)
-
getAcknowledgementsGroupTime
Description copied from interface:ReactiveMessageConsumerSpecGets the duration used to group acknowledgements.- Specified by:
getAcknowledgementsGroupTimein interfaceReactiveMessageConsumerSpec- Returns:
- the duration used to group acknowledgements
- See Also:
-
ConsumerBuilder.acknowledgmentGroupTime(long, java.util.concurrent.TimeUnit)
-
getAcknowledgeAsynchronously
Description copied from interface:ReactiveMessageConsumerSpecGets 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:
getAcknowledgeAsynchronouslyin interfaceReactiveMessageConsumerSpec- Returns:
- true if the acknowledge operation completion is ignored
-
getAcknowledgeScheduler
public reactor.core.scheduler.Scheduler getAcknowledgeScheduler()Description copied from interface:ReactiveMessageConsumerSpecGets the scheduler to use to handle acknowledgements.- Specified by:
getAcknowledgeSchedulerin interfaceReactiveMessageConsumerSpec- Returns:
- the scheduler to use to handle acknowledgements
-
getNegativeAckRedeliveryDelay
Description copied from interface:ReactiveMessageConsumerSpecGets the delay to wait before re-delivering messages that have failed to be processed.- Specified by:
getNegativeAckRedeliveryDelayin interfaceReactiveMessageConsumerSpec- Returns:
- the redelivery delay for failed messages
- See Also:
-
ConsumerBuilder.negativeAckRedeliveryDelay(long, java.util.concurrent.TimeUnit)
-
getNegativeAckRedeliveryBackoff
public org.apache.pulsar.client.api.RedeliveryBackoff getNegativeAckRedeliveryBackoff()Description copied from interface:ReactiveMessageConsumerSpecGet the negative ack redelivery backoff policy for messages that are negatively acknowledged.- Specified by:
getNegativeAckRedeliveryBackoffin interfaceReactiveMessageConsumerSpec- Returns:
- redeliveryBackoff
- See Also:
-
ConsumerBuilder.negativeAckRedeliveryBackoff(org.apache.pulsar.client.api.RedeliveryBackoff)
-
getAckTimeoutRedeliveryBackoff
public org.apache.pulsar.client.api.RedeliveryBackoff getAckTimeoutRedeliveryBackoff()Description copied from interface:ReactiveMessageConsumerSpecGet the redelivery backoff policy for messages that are redelivered due to acknowledgement timeout.- Specified by:
getAckTimeoutRedeliveryBackoffin interfaceReactiveMessageConsumerSpec- Returns:
- redeliveryBackoff
- See Also:
-
ConsumerBuilder.ackTimeoutRedeliveryBackoff(org.apache.pulsar.client.api.RedeliveryBackoff)
-
getDeadLetterPolicy
public org.apache.pulsar.client.api.DeadLetterPolicy getDeadLetterPolicy()Description copied from interface:ReactiveMessageConsumerSpecGets the dead letter policy for the consumer.- Specified by:
getDeadLetterPolicyin interfaceReactiveMessageConsumerSpec- Returns:
- the dead letter policy
- See Also:
-
ConsumerBuilder.deadLetterPolicy(org.apache.pulsar.client.api.DeadLetterPolicy)
-
getRetryLetterTopicEnable
Description copied from interface:ReactiveMessageConsumerSpecGets whether the retries are enabled.- Specified by:
getRetryLetterTopicEnablein interfaceReactiveMessageConsumerSpec- Returns:
- true if retries are enabled
- See Also:
-
ConsumerBuilder.enableRetry(boolean)
-
getReceiverQueueSize
Description copied from interface:ReactiveMessageConsumerSpecGets the size of the consumer receive queue.- Specified by:
getReceiverQueueSizein interfaceReactiveMessageConsumerSpec- Returns:
- the size of the consumer receive queue
- See Also:
-
ConsumerBuilder.receiverQueueSize(int)
-
getMaxTotalReceiverQueueSizeAcrossPartitions
Description copied from interface:ReactiveMessageConsumerSpecGets the max total receiver queue size across partitions.- Specified by:
getMaxTotalReceiverQueueSizeAcrossPartitionsin interfaceReactiveMessageConsumerSpec- Returns:
- the max total receiver queue size across partitions
- See Also:
-
ConsumerBuilder.maxTotalReceiverQueueSizeAcrossPartitions(int)
-
getAutoUpdatePartitions
Description copied from interface:ReactiveMessageConsumerSpecGets whether the consumer shall subscribe automatically to new partitions of partitioned topics.- Specified by:
getAutoUpdatePartitionsin interfaceReactiveMessageConsumerSpec- Returns:
- true if the consumer subscribes automatically to new partitions
- See Also:
-
ConsumerBuilder.autoUpdatePartitions(boolean)
-
getAutoUpdatePartitionsInterval
Description copied from interface:ReactiveMessageConsumerSpecGets the interval of updating partitions when autoUpdatePartitions is enabled.- Specified by:
getAutoUpdatePartitionsIntervalin interfaceReactiveMessageConsumerSpec- Returns:
- the interval between partitions updates
- See Also:
-
ConsumerBuilder.autoUpdatePartitionsInterval(int, java.util.concurrent.TimeUnit)ConsumerBuilder.autoUpdatePartitions(boolean)
-
getCryptoKeyReader
public org.apache.pulsar.client.api.CryptoKeyReader getCryptoKeyReader()Description copied from interface:ReactiveMessageConsumerSpecGets the key reader to be used to decrypt the message payloads.- Specified by:
getCryptoKeyReaderin interfaceReactiveMessageConsumerSpec- Returns:
- the key reader to be used to decrypt the message payloads
- See Also:
-
ConsumerBuilder.cryptoKeyReader(org.apache.pulsar.client.api.CryptoKeyReader)
-
getCryptoFailureAction
public org.apache.pulsar.client.api.ConsumerCryptoFailureAction getCryptoFailureAction()Description copied from interface:ReactiveMessageConsumerSpecGets the action the consumer will take in case of decryption failures.- Specified by:
getCryptoFailureActionin interfaceReactiveMessageConsumerSpec- Returns:
- the action the consumer will take in case of decryption failures
- See Also:
-
ConsumerBuilder.cryptoFailureAction(org.apache.pulsar.client.api.ConsumerCryptoFailureAction)
-
getMaxPendingChunkedMessage
Description copied from interface:ReactiveMessageConsumerSpecGets the maximum number of messages in the queue holding pending chunked messages.- Specified by:
getMaxPendingChunkedMessagein interfaceReactiveMessageConsumerSpec- Returns:
- the maximum number of messages in the queue holding pending chunked
- See Also:
-
messages.
-
getAutoAckOldestChunkedMessageOnQueueFull
Description copied from interface:ReactiveMessageConsumerSpecGets whether to automatically acknowledge pending chunked messages when maxPendingChunkedMessage is reached.- Specified by:
getAutoAckOldestChunkedMessageOnQueueFullin interfaceReactiveMessageConsumerSpec- Returns:
- true to acknowledge the messages, false to have them redelivered.
- See Also:
-
ConsumerBuilder.autoAckOldestChunkedMessageOnQueueFull(boolean)ConsumerBuilder.maxPendingChunkedMessage(int)
-
getExpireTimeOfIncompleteChunkedMessage
Description copied from interface:ReactiveMessageConsumerSpecGets the time interval to expire incomplete chunks if a consumer fails to receive all the chunks.- Specified by:
getExpireTimeOfIncompleteChunkedMessagein interfaceReactiveMessageConsumerSpec- Returns:
- the time interval to expire incomplete chunks.
- See Also:
-
ConsumerBuilder.expireTimeOfIncompleteChunkedMessage(long, java.util.concurrent.TimeUnit)
-
ImmutableReactiveMessageConsumerSpec(List, Pattern, RegexSubscriptionMode, Duration, String, SubscriptionMode, SubscriptionType, SubscriptionInitialPosition, KeySharedPolicy, Boolean, Map, String, Map, Integer, Boolean, Boolean, Duration, Duration, Duration, Boolean, Scheduler, Duration, RedeliveryBackoff, RedeliveryBackoff, DeadLetterPolicy, Boolean, Integer, Integer, Boolean, Duration, CryptoKeyReader, ConsumerCryptoFailureAction, Integer, Boolean, Duration)