Package io.micronaut.http.netty.body
Class NettyJsonHandler<T>
java.lang.Object
io.micronaut.http.netty.body.NettyJsonHandler<T>
- Type Parameters:
T- The type
- All Implemented Interfaces:
io.micronaut.http.body.ChunkedMessageBodyReader<T>,io.micronaut.http.body.MessageBodyHandler<T>,io.micronaut.http.body.MessageBodyReader<T>,io.micronaut.http.body.MessageBodyWriter<T>,CustomizableNettyJsonHandler,NettyBodyWriter<T>
@Singleton
@Internal
@Replaces(io.micronaut.json.body.JsonMessageHandler.class)
@Produces({"application/json","text/json","application/hal+json","application/vnd.github+json","application/feed+json","application/json-patch+json","application/merge-patch+json","application/problem+json"})
@Consumes({"application/json","text/json","application/hal+json","application/vnd.github+json","application/feed+json","application/json-patch+json","application/merge-patch+json","application/problem+json"})
@Requires(beans=io.micronaut.json.JsonMapper.class)
public final class NettyJsonHandler<T>
extends Object
implements io.micronaut.http.body.MessageBodyHandler<T>, io.micronaut.http.body.ChunkedMessageBodyReader<T>, CustomizableNettyJsonHandler, NettyBodyWriter<T>
Replacement for
JsonMessageHandler with ChunkedMessageBodyReader support.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionio.micronaut.http.body.MessageBodyWriter<T>createSpecific(io.micronaut.core.type.Argument<T> type) customize(io.micronaut.json.JsonFeatures jsonFeatures) booleanbooleanisReadable(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType) booleanisWriteable(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType) read(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, io.micronaut.core.type.Headers httpHeaders, io.micronaut.core.io.buffer.ByteBuffer<?> byteBuffer) read(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, io.micronaut.core.type.Headers httpHeaders, InputStream inputStream) org.reactivestreams.Publisher<T>readChunked(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, io.micronaut.core.type.Headers httpHeaders, org.reactivestreams.Publisher<io.micronaut.core.io.buffer.ByteBuffer<?>> input) voidwriteTo(@NonNull io.micronaut.http.HttpRequest<?> request, @NonNull io.micronaut.http.MutableHttpResponse<T> outgoingResponse, @NonNull io.micronaut.core.type.Argument<T> type, @NonNull io.micronaut.http.MediaType mediaType, T object, @NonNull NettyWriteContext nettyContext) Write an object to the given context.io.micronaut.core.io.buffer.ByteBuffer<?>writeTo(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, T object, io.micronaut.core.type.MutableHeaders outgoingHeaders, io.micronaut.core.io.buffer.ByteBufferFactory<?, ?> bufferFactory) voidwriteTo(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, T object, io.micronaut.core.type.MutableHeaders outgoingHeaders, OutputStream outputStream)
-
Constructor Details
-
NettyJsonHandler
public NettyJsonHandler(io.micronaut.json.JsonMapper jsonMapper)
-
-
Method Details
-
customize
- Specified by:
customizein interfaceCustomizableNettyJsonHandler
-
readChunked
public org.reactivestreams.Publisher<T> readChunked(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, io.micronaut.core.type.Headers httpHeaders, org.reactivestreams.Publisher<io.micronaut.core.io.buffer.ByteBuffer<?>> input) - Specified by:
readChunkedin interfaceio.micronaut.http.body.ChunkedMessageBodyReader<T>
-
isReadable
public boolean isReadable(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType) - Specified by:
isReadablein interfaceio.micronaut.http.body.MessageBodyReader<T>
-
read
public T read(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, io.micronaut.core.type.Headers httpHeaders, io.micronaut.core.io.buffer.ByteBuffer<?> byteBuffer) throws io.micronaut.http.codec.CodecException - Specified by:
readin interfaceio.micronaut.http.body.MessageBodyReader<T>- Throws:
io.micronaut.http.codec.CodecException
-
read
public T read(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, io.micronaut.core.type.Headers httpHeaders, InputStream inputStream) throws io.micronaut.http.codec.CodecException - Specified by:
readin interfaceio.micronaut.http.body.MessageBodyReader<T>- Throws:
io.micronaut.http.codec.CodecException
-
isWriteable
public boolean isWriteable(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType) - Specified by:
isWriteablein interfaceio.micronaut.http.body.MessageBodyWriter<T>
-
writeTo
public void writeTo(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, T object, io.micronaut.core.type.MutableHeaders outgoingHeaders, OutputStream outputStream) throws io.micronaut.http.codec.CodecException - Specified by:
writeToin interfaceio.micronaut.http.body.MessageBodyWriter<T>- Throws:
io.micronaut.http.codec.CodecException
-
writeTo
public io.micronaut.core.io.buffer.ByteBuffer<?> writeTo(io.micronaut.core.type.Argument<T> type, io.micronaut.http.MediaType mediaType, T object, io.micronaut.core.type.MutableHeaders outgoingHeaders, io.micronaut.core.io.buffer.ByteBufferFactory<?, ?> bufferFactory) throws io.micronaut.http.codec.CodecException- Specified by:
writeToin interfaceio.micronaut.http.body.MessageBodyWriter<T>- Throws:
io.micronaut.http.codec.CodecException
-
writeTo
public void writeTo(@NonNull @NonNull io.micronaut.http.HttpRequest<?> request, @NonNull @NonNull io.micronaut.http.MutableHttpResponse<T> outgoingResponse, @NonNull @NonNull io.micronaut.core.type.Argument<T> type, @NonNull @NonNull io.micronaut.http.MediaType mediaType, @NonNull T object, @NonNull @NonNull NettyWriteContext nettyContext) throws io.micronaut.http.codec.CodecException Description copied from interface:NettyBodyWriterWrite an object to the given context.- Specified by:
writeToin interfaceNettyBodyWriter<T>- Parameters:
request- The associated requestoutgoingResponse- The outgoing response.type- The typemediaType- The media typeobject- The object to writenettyContext- The netty context- Throws:
io.micronaut.http.codec.CodecException- If an error occurs decoding
-
createSpecific
public io.micronaut.http.body.MessageBodyWriter<T> createSpecific(io.micronaut.core.type.Argument<T> type) - Specified by:
createSpecificin interfaceio.micronaut.http.body.MessageBodyWriter<T>
-
isBlocking
public boolean isBlocking()- Specified by:
isBlockingin interfaceio.micronaut.http.body.MessageBodyWriter<T>
-