Class AbstractPipelineMessageListenerContainer<T,O extends ContainerOptions<O,B>,B extends ContainerOptionsBuilder<B,O>>

java.lang.Object
io.awspring.cloud.sqs.listener.AbstractMessageListenerContainer<T,O,B>
io.awspring.cloud.sqs.listener.AbstractPipelineMessageListenerContainer<T,O,B>
All Implemented Interfaces:
MessageListenerContainer<T>, Lifecycle, Phased, SmartLifecycle
Direct Known Subclasses:
SqsMessageListenerContainer

public abstract class AbstractPipelineMessageListenerContainer<T,O extends ContainerOptions<O,B>,B extends ContainerOptionsBuilder<B,O>> extends AbstractMessageListenerContainer<T,O,B>
Base MessageListenerContainer implementation for managing Message instances' lifecycles.

This container uses a MessageSource to create the Message instances, which are forwarded to a MessageSink and finally emitted to a MessageProcessingPipeline.

The pipeline has several stages for processing the messages and executing logic in components such as AsyncMessageListener, AsyncErrorHandler and AsyncMessageInterceptor.

Such components are created by the ContainerComponentFactory and the container manages their lifecycles.

Components and ContainerOptions can be changed at runtime and such changes will be valid upon container restart.

Since:
3.0
Author:
Tomaz Fernandes