public class ResourceHttpMessageWriter extends Object implements HttpMessageWriter<Resource>
HttpMessageWriter that can write a Resource.
Also an implementation of HttpMessageWriter with support for writing one
or more ResourceRegion's based on the HTTP ranges specified in the request.
For reading to a Resource, use ResourceDecoder wrapped with
DecoderHttpMessageReader.
ResourceEncoder,
ResourceRegionEncoder,
HttpRange| Constructor and Description |
|---|
ResourceHttpMessageWriter() |
ResourceHttpMessageWriter(int bufferSize) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canWrite(ResolvableType elementType,
MediaType mediaType)
Whether the given object type is supported by this writer.
|
List<MediaType> |
getWritableMediaTypes()
Return the
MediaType's that this writer supports. |
reactor.core.publisher.Mono<Void> |
write(org.reactivestreams.Publisher<? extends Resource> inputStream,
ResolvableType elementType,
MediaType mediaType,
ReactiveHttpOutputMessage message,
Map<String,Object> hints)
Write an given stream of object to the output message.
|
reactor.core.publisher.Mono<Void> |
write(org.reactivestreams.Publisher<? extends Resource> inputStream,
ResolvableType actualType,
ResolvableType elementType,
MediaType mediaType,
ServerHttpRequest request,
ServerHttpResponse response,
Map<String,Object> hints)
Server-side only alternative to
HttpMessageWriter.write(Publisher, ResolvableType, MediaType, ReactiveHttpOutputMessage, Map)
with additional context available. |
public ResourceHttpMessageWriter()
public ResourceHttpMessageWriter(int bufferSize)
public boolean canWrite(ResolvableType elementType, @Nullable MediaType mediaType)
HttpMessageWritercanWrite in interface HttpMessageWriter<Resource>elementType - the type of object to checkmediaType - the media type for the write (possibly null)true if writable, false otherwisepublic List<MediaType> getWritableMediaTypes()
HttpMessageWriterMediaType's that this writer supports.getWritableMediaTypes in interface HttpMessageWriter<Resource>public reactor.core.publisher.Mono<Void> write(org.reactivestreams.Publisher<? extends Resource> inputStream, ResolvableType elementType, @Nullable MediaType mediaType, ReactiveHttpOutputMessage message, Map<String,Object> hints)
HttpMessageWriterwrite in interface HttpMessageWriter<Resource>inputStream - the objects to writeelementType - the type of objects in the stream which must have been
previously checked via HttpMessageWriter.canWrite(ResolvableType, MediaType)mediaType - the content type for the write (possibly null to
indicate that the default content type of the writer must be used)message - the message to write tohints - additional information about how to encode and writepublic reactor.core.publisher.Mono<Void> write(org.reactivestreams.Publisher<? extends Resource> inputStream, @Nullable ResolvableType actualType, ResolvableType elementType, @Nullable MediaType mediaType, ServerHttpRequest request, ServerHttpResponse response, Map<String,Object> hints)
HttpMessageWriterHttpMessageWriter.write(Publisher, ResolvableType, MediaType, ReactiveHttpOutputMessage, Map)
with additional context available.write in interface HttpMessageWriter<Resource>actualType - the actual return type of the method that returned the
value; for annotated controllers, the MethodParameter can be
accessed via ResolvableType.getSource().elementType - the type of Objects in the input streammediaType - the content type to use (possibly null indicating
the default content type of the writer should be used)request - the current requestresponse - the current responseMono that indicates completion of writing or error