Class AcknowledgerConsumerWorker<T extends Acknowledgeable>
java.lang.Object
io.aleph0.yap.messaging.core.AcknowledgerConsumerWorker<T>
- Type Parameters:
T- the type of input messages
- All Implemented Interfaces:
ConsumerWorker<T>,Measureable<AcknowledgerMetrics>,MeasuredConsumerWorker<T,AcknowledgerMetrics>
public class AcknowledgerConsumerWorker<T extends Acknowledgeable>
extends Object
implements MeasuredConsumerWorker<T,AcknowledgerMetrics>
A
ProcessorWorker that receives inputs from upstream, acknowledges the input, and then
discards the input.
On source failure, the worker will fail the task.
On acknowledgement failure, the worker may fail the task, at the discretion of its
failure handler.
On interrupt, the worker will stop receiving messages immediately.
In all cases, the worker will wait for all outstanding acks to finish before stopping or failing the task.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceAllows the user to customize the behavior of the worker when an acknowledgement fails. -
Constructor Summary
ConstructorsConstructorDescriptionAcknowledgerConsumerWorker(AcknowledgerConsumerWorker.AcknowledgementFailureHandler acknowledgementFailureHandler) -
Method Summary
Modifier and TypeMethodDescriptionvoidReturns the defaultAcknowledgerConsumerWorker.AcknowledgementFailureHandler, which simply re-throws the given failure cause.
-
Constructor Details
-
AcknowledgerConsumerWorker
public AcknowledgerConsumerWorker() -
AcknowledgerConsumerWorker
public AcknowledgerConsumerWorker(AcknowledgerConsumerWorker.AcknowledgementFailureHandler acknowledgementFailureHandler)
-
-
Method Details
-
defaultAcknowledgementFailureHandler
public static AcknowledgerConsumerWorker.AcknowledgementFailureHandler defaultAcknowledgementFailureHandler()Returns the defaultAcknowledgerConsumerWorker.AcknowledgementFailureHandler, which simply re-throws the given failure cause.- Returns:
- the default
AcknowledgerConsumerWorker.AcknowledgementFailureHandler
-
consume
- Specified by:
consumein interfaceConsumerWorker<T extends Acknowledgeable>- Throws:
IOExceptionInterruptedException
-
checkMetrics
- Specified by:
checkMetricsin interfaceMeasureable<T extends Acknowledgeable>
-
flushMetrics
- Specified by:
flushMetricsin interfaceMeasureable<T extends Acknowledgeable>
-