public interface ReactiveHttpOutputMessage extends HttpMessage
Publisher
.
Typically implemented by an HTTP request on the client-side or an HTTP response on the server-side.
Modifier and Type | Method and Description |
---|---|
void |
beforeCommit(Supplier<? extends reactor.core.publisher.Mono<Void>> action)
Register an action to apply just before the HttpOutputMessage is committed.
|
DataBufferFactory |
bufferFactory()
Return a
DataBufferFactory that can be used to create the body. |
boolean |
isCommitted()
Whether the HttpOutputMessage is committed.
|
reactor.core.publisher.Mono<Void> |
setComplete()
Indicate that message handling is complete, allowing for any cleanup or
end-of-processing tasks to be performed such as applying header changes
made via
HttpMessage.getHeaders() to the underlying HTTP message (if not
applied already). |
reactor.core.publisher.Mono<Void> |
writeAndFlushWith(Publisher<? extends Publisher<? extends DataBuffer>> body)
Use the given
Publisher of Publishers to write the body
of the HttpOutputMessage to the underlying HTTP layer, flushing after
each Publisher<DataBuffer> . |
reactor.core.publisher.Mono<Void> |
writeWith(Publisher<? extends DataBuffer> body)
Use the given
Publisher to write the body of the message to the
underlying HTTP layer. |
getHeaders
DataBufferFactory bufferFactory()
DataBufferFactory
that can be used to create the body.writeWith(Publisher)
void beforeCommit(Supplier<? extends reactor.core.publisher.Mono<Void>> action)
Note: the supplied action must be properly deferred,
e.g. via Mono.defer(java.util.function.Supplier<? extends reactor.core.publisher.Mono<? extends T>>)
or Mono.fromRunnable(java.lang.Runnable)
, to ensure it's
executed in the right order, relative to other actions.
action
- the action to applyboolean isCommitted()
reactor.core.publisher.Mono<Void> writeWith(Publisher<? extends DataBuffer> body)
Publisher
to write the body of the message to the
underlying HTTP layer.body
- the body content publisherMono
that indicates completion or errorreactor.core.publisher.Mono<Void> writeAndFlushWith(Publisher<? extends Publisher<? extends DataBuffer>> body)
Publisher
of Publishers
to write the body
of the HttpOutputMessage to the underlying HTTP layer, flushing after
each Publisher<DataBuffer>
.body
- the body content publisherMono
that indicates completion or errorreactor.core.publisher.Mono<Void> setComplete()
HttpMessage.getHeaders()
to the underlying HTTP message (if not
applied already).
This method should be automatically invoked at the end of message processing so typically applications should not have to invoke it. If invoked multiple times it should have no side effects.
Mono
that indicates completion or error