Package io.micronaut.json.codec
Class MapperMediaTypeCodec
- java.lang.Object
-
- io.micronaut.json.codec.MapperMediaTypeCodec
-
- All Implemented Interfaces:
io.micronaut.http.codec.MediaTypeCodec
- Direct Known Subclasses:
JsonMediaTypeCodec
public abstract class MapperMediaTypeCodec extends java.lang.Object implements io.micronaut.http.codec.MediaTypeCodec
AMediaTypeCodec
forJsonMapper
based implementations.- Since:
- 1.3.0
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List<io.micronaut.http.MediaType>
additionalTypes
protected io.micronaut.runtime.ApplicationConfiguration
applicationConfiguration
protected io.micronaut.http.codec.CodecConfiguration
codecConfiguration
protected io.micronaut.http.MediaType
mediaType
static java.lang.String
REGULAR_JSON_MEDIA_TYPE_CODEC_NAME
-
Constructor Summary
Constructors Constructor Description MapperMediaTypeCodec(io.micronaut.context.BeanProvider<JsonMapper> mapperProvider, io.micronaut.runtime.ApplicationConfiguration applicationConfiguration, io.micronaut.http.codec.CodecConfiguration codecConfiguration, io.micronaut.http.MediaType mediaType)
MapperMediaTypeCodec(JsonMapper mapper, io.micronaut.runtime.ApplicationConfiguration applicationConfiguration, io.micronaut.http.codec.CodecConfiguration codecConfiguration, io.micronaut.http.MediaType mediaType)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description MapperMediaTypeCodec
cloneWithFeatures(JsonFeatures features)
Create a copy of this codec with the given features.protected abstract MapperMediaTypeCodec
cloneWithMapper(JsonMapper mapper)
MapperMediaTypeCodec
cloneWithViewClass(java.lang.Class<?> viewClass)
<T> T
decode(io.micronaut.core.type.Argument<T> type, byte[] bytes)
<T> T
decode(io.micronaut.core.type.Argument<T> type, io.micronaut.core.io.buffer.ByteBuffer<?> buffer)
<T> T
decode(io.micronaut.core.type.Argument<T> type, JsonNode node)
Decodes the given JSON node.<T> T
decode(io.micronaut.core.type.Argument<T> type, java.io.InputStream inputStream)
<T> T
decode(io.micronaut.core.type.Argument<T> type, java.lang.String data)
<T> byte[]
encode(io.micronaut.core.type.Argument<T> type, T object)
<T,B>
io.micronaut.core.io.buffer.ByteBuffer<B>encode(io.micronaut.core.type.Argument<T> type, T object, io.micronaut.core.io.buffer.ByteBufferFactory<?,B> allocator)
<T> void
encode(io.micronaut.core.type.Argument<T> type, T object, java.io.OutputStream outputStream)
<T> byte[]
encode(T object)
<T,B>
io.micronaut.core.io.buffer.ByteBuffer<B>encode(T object, io.micronaut.core.io.buffer.ByteBufferFactory<?,B> allocator)
<T> void
encode(T object, java.io.OutputStream outputStream)
JsonMapper
getJsonMapper()
java.util.Collection<io.micronaut.http.MediaType>
getMediaTypes()
boolean
supportsType(java.lang.Class<?> type)
-
-
-
Field Detail
-
REGULAR_JSON_MEDIA_TYPE_CODEC_NAME
public static final java.lang.String REGULAR_JSON_MEDIA_TYPE_CODEC_NAME
- See Also:
- Constant Field Values
-
applicationConfiguration
protected final io.micronaut.runtime.ApplicationConfiguration applicationConfiguration
-
additionalTypes
protected final java.util.List<io.micronaut.http.MediaType> additionalTypes
-
codecConfiguration
protected final io.micronaut.http.codec.CodecConfiguration codecConfiguration
-
mediaType
protected final io.micronaut.http.MediaType mediaType
-
-
Constructor Detail
-
MapperMediaTypeCodec
public MapperMediaTypeCodec(io.micronaut.context.BeanProvider<JsonMapper> mapperProvider, io.micronaut.runtime.ApplicationConfiguration applicationConfiguration, io.micronaut.http.codec.CodecConfiguration codecConfiguration, io.micronaut.http.MediaType mediaType)
- Parameters:
mapperProvider
- To read/write JSONapplicationConfiguration
- The common application configurationscodecConfiguration
- The configuration for the codecmediaType
- Client request/response media type
-
MapperMediaTypeCodec
public MapperMediaTypeCodec(JsonMapper mapper, io.micronaut.runtime.ApplicationConfiguration applicationConfiguration, io.micronaut.http.codec.CodecConfiguration codecConfiguration, io.micronaut.http.MediaType mediaType)
- Parameters:
mapper
- To read/write JSONapplicationConfiguration
- The common application configurationscodecConfiguration
- The configuration for the codecmediaType
- Client request/response media type
-
-
Method Detail
-
getJsonMapper
public JsonMapper getJsonMapper()
- Returns:
- The object mapper
-
cloneWithFeatures
public MapperMediaTypeCodec cloneWithFeatures(JsonFeatures features)
Create a copy of this codec with the given features. Should not be extended, extendcloneWithMapper(io.micronaut.json.JsonMapper)
instead.- Parameters:
features
- The features to apply.- Returns:
- A new codec with the features applied, leaving this codec unchanged.
-
cloneWithViewClass
public final MapperMediaTypeCodec cloneWithViewClass(java.lang.Class<?> viewClass)
-
cloneWithMapper
protected abstract MapperMediaTypeCodec cloneWithMapper(JsonMapper mapper)
-
getMediaTypes
public java.util.Collection<io.micronaut.http.MediaType> getMediaTypes()
- Specified by:
getMediaTypes
in interfaceio.micronaut.http.codec.MediaTypeCodec
-
supportsType
public boolean supportsType(java.lang.Class<?> type)
- Specified by:
supportsType
in interfaceio.micronaut.http.codec.MediaTypeCodec
-
decode
public <T> T decode(io.micronaut.core.type.Argument<T> type, java.io.InputStream inputStream) throws io.micronaut.http.codec.CodecException
- Specified by:
decode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
decode
public <T> T decode(io.micronaut.core.type.Argument<T> type, JsonNode node) throws io.micronaut.http.codec.CodecException
Decodes the given JSON node.- Type Parameters:
T
- The generic type- Parameters:
type
- The typenode
- The Json Node- Returns:
- The decoded object
- Throws:
io.micronaut.http.codec.CodecException
- When object cannot be decoded
-
decode
public <T> T decode(io.micronaut.core.type.Argument<T> type, io.micronaut.core.io.buffer.ByteBuffer<?> buffer) throws io.micronaut.http.codec.CodecException
- Specified by:
decode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
decode
public <T> T decode(io.micronaut.core.type.Argument<T> type, byte[] bytes) throws io.micronaut.http.codec.CodecException
- Specified by:
decode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
decode
public <T> T decode(io.micronaut.core.type.Argument<T> type, java.lang.String data) throws io.micronaut.http.codec.CodecException
- Specified by:
decode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
encode
public <T> void encode(T object, java.io.OutputStream outputStream) throws io.micronaut.http.codec.CodecException
- Specified by:
encode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
encode
public <T> void encode(io.micronaut.core.type.Argument<T> type, T object, java.io.OutputStream outputStream) throws io.micronaut.http.codec.CodecException
- Specified by:
encode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
encode
public <T> byte[] encode(T object) throws io.micronaut.http.codec.CodecException
- Specified by:
encode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
encode
public <T> byte[] encode(io.micronaut.core.type.Argument<T> type, T object) throws io.micronaut.http.codec.CodecException
- Specified by:
encode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
encode
public <T,B> io.micronaut.core.io.buffer.ByteBuffer<B> encode(T object, io.micronaut.core.io.buffer.ByteBufferFactory<?,B> allocator) throws io.micronaut.http.codec.CodecException
- Specified by:
encode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
encode
public <T,B> io.micronaut.core.io.buffer.ByteBuffer<B> encode(io.micronaut.core.type.Argument<T> type, T object, io.micronaut.core.io.buffer.ByteBufferFactory<?,B> allocator) throws io.micronaut.http.codec.CodecException
- Specified by:
encode
in interfaceio.micronaut.http.codec.MediaTypeCodec
- Throws:
io.micronaut.http.codec.CodecException
-
-