Package com.rabbitmq.stream
Class ConsumerFlowStrategy.CreditOnChunkArrivalConsumerFlowStrategy
java.lang.Object
com.rabbitmq.stream.ConsumerFlowStrategy.CreditOnChunkArrivalConsumerFlowStrategy
- All Implemented Interfaces:
ConsumerFlowStrategy
- Enclosing interface:
ConsumerFlowStrategy
public static class ConsumerFlowStrategy.CreditOnChunkArrivalConsumerFlowStrategy
extends Object
implements ConsumerFlowStrategy
Strategy that provides the specified number of initial credits and a credit on each new chunk.
Calls to MessageHandler.Context.processed()
are ignored.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.rabbitmq.stream.ConsumerFlowStrategy
ConsumerFlowStrategy.Context, ConsumerFlowStrategy.CreditOnChunkArrivalConsumerFlowStrategy, ConsumerFlowStrategy.MessageCountConsumerFlowStrategy, ConsumerFlowStrategy.MessageProcessedCallback
-
Method Summary
Modifier and TypeMethodDescriptionint
The initial number of credits for a subscription.start
(ConsumerFlowStrategy.Context context) Return the behavior forMessageHandler.Context.processed()
calls.
-
Method Details
-
initialCredits
public int initialCredits()Description copied from interface:ConsumerFlowStrategy
The initial number of credits for a subscription.It must be greater than 0. Values are usually between 1 and 10.
- Specified by:
initialCredits
in interfaceConsumerFlowStrategy
- Returns:
- initial number of credits
-
start
Description copied from interface:ConsumerFlowStrategy
Return the behavior forMessageHandler.Context.processed()
calls.This method is called for each chunk of messages. Implementations return a callback that will be called when applications consider a message dealt with and call
MessageHandler.Context.processed()
. The callback can count messages and provide credits accordingly.- Specified by:
start
in interfaceConsumerFlowStrategy
- Parameters:
context
- chunk context- Returns:
- the message processed callback
-