Supported signatures
The following tables list the supported method signatures and indicate the various supported features. For instance, they indicate the default and available acknowledgement strategies (when applicable).
| Signature | Invocation time | 
|---|---|
@Outgoing Publisher<Message<O>> method() ` | 
Called once at assembly time | 
@Outgoing Publisher<O> method() ` | 
Called once at assembly time | 
@Outgoing Multi<Message<O>> method() ` | 
Called once at assembly time | 
@Outgoing Multi<O> method() ` | 
Called once at assembly time | 
@Outgoing PublisherBuilder<Message<O>> method() ` | 
Called once at assembly time | 
@Outgoing PublisherBuilder<O> method() ` | 
Called once at assembly time | 
@Outgoing Message<O> method() ` | 
Called for every downstream request, sequentially | 
@Outgoing O method() ` | 
Called for every downstream request, sequentially | 
@Outgoing CompletionStage<Message<O>> method() ` | 
Called for every downstream request, sequentially (After the completion of the last returned CompletionStage) | 
@Outgoing CompletionStage<O> method() ` | 
Called for every downstream request, , sequentially (After the completion of the last returned CompletionStage) | 
@Outgoing Uni<Message<O>> method() ` | 
Called for every downstream request, sequentially (After the completion of the last returned Uni) | 
@Outgoing Uni<O> method() ` | 
Called for every downstream request, , sequentially (After the completion of the last returned Uni) | 
Method signatures to generate data
| Signature | Invocation time | Supported Acknowledgement Strategies | 
|---|---|---|
@Incoming void method(I p) | 
Called for every incoming payload (sequentially) | POST_PROCESSING, NONE, PRE_PROCESSING | 
@Incoming CompletionStage<?> method(Message<I> msg) | 
Called for every incoming message (sequentially) | MANUAL, NONE, PRE_PROCESSING | 
@Incoming CompletionStage<?> method(I p) | 
Called for every incoming payload (sequentially) | POST_PROCESSING, PRE_PROCESSING, NONE | 
@Incoming Uni<?> method(Message<I> msg) | 
Called for every incoming message (sequentially) | MANUAL, NONE, PRE_PROCESSING | 
@Incoming Uni<?> method(I p) | 
Called for every incoming payload (sequentially) | POST_PROCESSING, PRE_PROCESSING, NONE | 
@Incoming Subscriber<Message<I>> method() | 
Called once at assembly time | MANUAL, POST_PROCESSING, NONE, PRE_PROCESSING | 
@Incoming Subscriber<I> method() | 
Called once at assembly time | POST_PROCESSING, NONE, PRE_PROCESSING | 
Method signatures to consume data
| Signature | Invocation time | Supported Acknowledgement Strategies | Metadata Propagation | 
|---|---|---|---|
@Outgoing @Incoming Message<O> method(Message<I> msg) | 
Called for every incoming message (sequentially) | MANUAL, NONE, PRE_PROCESSING | manual | 
@Outgoing @Incoming O method(I payload) | 
Called for every incoming payload (sequentially) | POST_PROCESSING, NONE, PRE_PROCESSING | automatic | 
@Outgoing @Incoming CompletionStage<Message<O>> method(Message<I> msg) | 
Called for every incoming message (sequentially) | MANUAL, NONE, PRE_PROCESSING | manual | 
@Outgoing @Incoming CompletionStage<O> method(I payload) | 
Called for every incoming payload (sequentially) | POST_PROCESSING, NONE, PRE_PROCESSING | automatic | 
@Outgoing @Incoming Uni<Message<O>> method(Message<I> msg) | 
Called for every incoming message (sequentially) | MANUAL, NONE, PRE_PROCESSING | manual | 
@Outgoing @Incoming Uni<O> method(I payload) | 
Called for every incoming payload (sequentially) | POST_PROCESSING, NONE, PRE_PROCESSING | automatic | 
@Outgoing @Incoming Processor<Message<I>, Message<O>> method() | 
Called once at assembly time | MANUAL, PRE_PROCESSING, NONE | manual | 
@Outgoing @Incoming Processor<I, O> method() | 
Called once at assembly time | PRE_PROCESSING, NONE | not supported | 
@Outgoing @Incoming ProcessorBuilder<Message<I>, Message<O>> method() | 
Called once at assembly time | MANUAL, PRE_PROCESSING, NONE | manual | 
@Outgoing @Incoming ProcessorBuilder<I, O> method() | 
Called once at assembly time | PRE_PROCESSING, NONE | not supported | 
@Outgoing @Incoming Publisher<Message<O>> method(Message<I> msg) | 
Called once at assembly time | MANUAL, PRE_PROCESSING, NONE | manual | 
@Outgoing @Incoming Publisher<O> method(I payload) | 
Called once at assembly time | PRE_PROCESSING, NONE | automatic | 
@Outgoing @Incoming Multi<Message<O>> method(Message<I> msg) | 
Called once at assembly time | MANUAL, PRE_PROCESSING, NONE | manual | 
@Outgoing @Incoming Multi<O> method(I payload) | 
Called once at assembly time | PRE_PROCESSING, NONE | automatic | 
@Outgoing @Incoming PublisherBuilder<Message<O>> method(Message<I> msg) | 
Called once at assembly time | MANUAL, PRE_PROCESSING, NONE | manual | 
@Outgoing @Incoming PublisherBuilder<O> method(I payload) | 
Called once at assembly time | PRE_PROCESSING, NONE | automatic | 
Method signatures to process data
| Signature | Invocation time | Supported Acknowledgement Strategies | Metadata Propagation | 
|---|---|---|---|
@Outgoing @Incoming Publisher<Message<O>> method(Publisher<Message<I>> pub) | 
Called once at assembly time | MANUAL, NONE, PRE_PROCESSING | manual | 
@Outgoing @Incoming Publisher<O> method(Publisher<I> pub) | 
Called once at assembly time | PRE_PROCESSING, NONE | not supported | 
@Outgoing @Incoming Multi<Message<O>> method(Multi<Message<I>> pub) | 
Called once at assembly time | MANUAL, NONE, PRE_PROCESSING | manual | 
@Outgoing @Incoming Multi<O> method(Multi<I> pub) | 
Called once at assembly time | PRE_PROCESSING, NONE | not supported | 
@Outgoing @Incoming PublisherBuilder<Message<O>> method(PublisherBuilder<Message<I>> pub) | 
Called once at assembly time | MANUAL, NONE, PRE_PROCESSING | manual | 
@Outgoing @Incoming PublisherBuilder<O> method(PublisherBuilder<I> pub) | 
Called once at assembly time | NONE, PRE_PROCESSING | not supported | 
Method signatures to manipulate streams
Important
When processing Message, it is often required to chain the incoming
Message to enable post-processing acknowledgement and metadata
propagation. Use the with (like withPayload) methods from the
incoming message, so it copies the metadata and ack/nack methods. It
returns a new Message with the right content.