public abstract class MapperMediaTypeCodec extends Object implements MediaTypeCodec
MediaTypeCodec
for JsonMapper
based implementations.Modifier and Type | Field and Description |
---|---|
protected List<MediaType> |
additionalTypes |
protected ApplicationConfiguration |
applicationConfiguration |
protected CodecConfiguration |
codecConfiguration |
protected MediaType |
mediaType |
static String |
REGULAR_JSON_MEDIA_TYPE_CODEC_NAME |
Constructor and Description |
---|
MapperMediaTypeCodec(BeanProvider<JsonMapper> mapperProvider,
ApplicationConfiguration applicationConfiguration,
CodecConfiguration codecConfiguration,
MediaType mediaType) |
MapperMediaTypeCodec(JsonMapper mapper,
ApplicationConfiguration applicationConfiguration,
CodecConfiguration codecConfiguration,
MediaType mediaType) |
Modifier and Type | Method and Description |
---|---|
MapperMediaTypeCodec |
cloneWithFeatures(JsonFeatures features)
Create a copy of this codec with the given features.
|
protected abstract MapperMediaTypeCodec |
cloneWithMapper(JsonMapper mapper) |
MapperMediaTypeCodec |
cloneWithViewClass(Class<?> viewClass) |
<T> T |
decode(Argument<T> type,
byte[] bytes)
Decode the given type from the given bytes.
|
<T> T |
decode(Argument<T> type,
ByteBuffer<?> buffer)
Decode the given type from the given buffer.
|
<T> T |
decode(Argument<T> type,
InputStream inputStream)
Decode the given type from the given
InputStream . |
<T> T |
decode(Argument<T> type,
JsonNode node)
Decodes the given JSON node.
|
<T> T |
decode(Argument<T> type,
String data)
Decode the given type from the given bytes.
|
<T> byte[] |
encode(Argument<T> type,
T object)
Encode the given type returning the object as a byte[].
|
<T,B> ByteBuffer<B> |
encode(Argument<T> type,
T object,
ByteBufferFactory<?,B> allocator)
Encode the given type returning the object as a
ByteBuffer . |
<T> void |
encode(Argument<T> type,
T object,
OutputStream outputStream)
Encode the given type to the given
OutputStream . |
<T> byte[] |
encode(T object)
Encode the given type returning the object as a byte[].
|
<T,B> ByteBuffer<B> |
encode(T object,
ByteBufferFactory<?,B> allocator)
Encode the given type returning the object as a
ByteBuffer . |
<T> void |
encode(T object,
OutputStream outputStream)
Encode the given type to the given
OutputStream . |
JsonMapper |
getJsonMapper() |
Collection<MediaType> |
getMediaTypes() |
boolean |
supportsType(Class<?> type)
Whether the codec can decode the given type.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
decode, decode, decode, decode
public static final String REGULAR_JSON_MEDIA_TYPE_CODEC_NAME
protected final ApplicationConfiguration applicationConfiguration
protected final CodecConfiguration codecConfiguration
protected final MediaType mediaType
public MapperMediaTypeCodec(BeanProvider<JsonMapper> mapperProvider, ApplicationConfiguration applicationConfiguration, CodecConfiguration codecConfiguration, MediaType mediaType)
mapperProvider
- To read/write JSONapplicationConfiguration
- The common application configurationscodecConfiguration
- The configuration for the codecmediaType
- Client request/response media typepublic MapperMediaTypeCodec(JsonMapper mapper, ApplicationConfiguration applicationConfiguration, CodecConfiguration codecConfiguration, MediaType mediaType)
mapper
- To read/write JSONapplicationConfiguration
- The common application configurationscodecConfiguration
- The configuration for the codecmediaType
- Client request/response media typepublic JsonMapper getJsonMapper()
public MapperMediaTypeCodec cloneWithFeatures(JsonFeatures features)
cloneWithMapper(io.micronaut.json.JsonMapper)
instead.features
- The features to apply.public final MapperMediaTypeCodec cloneWithViewClass(Class<?> viewClass)
protected abstract MapperMediaTypeCodec cloneWithMapper(JsonMapper mapper)
public Collection<MediaType> getMediaTypes()
getMediaTypes
in interface MediaTypeCodec
public boolean supportsType(Class<?> type)
MediaTypeCodec
supportsType
in interface MediaTypeCodec
type
- The typepublic <T> T decode(Argument<T> type, InputStream inputStream) throws CodecException
MediaTypeCodec
InputStream
.decode
in interface MediaTypeCodec
T
- The generic typetype
- The typeinputStream
- The input streamCodecException
- When the result cannot be decodedpublic <T> T decode(Argument<T> type, JsonNode node) throws CodecException
T
- The generic typetype
- The typenode
- The Json NodeCodecException
- When object cannot be decodedpublic <T> T decode(Argument<T> type, ByteBuffer<?> buffer) throws CodecException
MediaTypeCodec
ByteBuffer
instances
should override this method.decode
in interface MediaTypeCodec
T
- The decoded typetype
- The typebuffer
- the bufferCodecException
- When the result cannot be decodedpublic <T> T decode(Argument<T> type, byte[] bytes) throws CodecException
MediaTypeCodec
decode
in interface MediaTypeCodec
T
- The decoded typetype
- The typebytes
- The bytesCodecException
- When the result cannot be decodedpublic <T> T decode(Argument<T> type, String data) throws CodecException
MediaTypeCodec
decode
in interface MediaTypeCodec
T
- The decoded typetype
- The typedata
- The data as a stringCodecException
- When the result cannot be decodedpublic <T> void encode(T object, OutputStream outputStream) throws CodecException
MediaTypeCodec
OutputStream
.encode
in interface MediaTypeCodec
T
- The generic typeobject
- The object to encodeoutputStream
- The output streamCodecException
- When the result cannot be encodedpublic <T> void encode(Argument<T> type, T object, OutputStream outputStream) throws CodecException
MediaTypeCodec
OutputStream
.encode
in interface MediaTypeCodec
T
- The generic typetype
- The type including any generics and/or metadata.object
- The object to encodeoutputStream
- The output streamCodecException
- When the result cannot be encodedpublic <T> byte[] encode(T object) throws CodecException
MediaTypeCodec
encode
in interface MediaTypeCodec
T
- The generic typeobject
- The object to encodeCodecException
- When the result cannot be encodedpublic <T> byte[] encode(Argument<T> type, T object) throws CodecException
MediaTypeCodec
encode
in interface MediaTypeCodec
T
- The generic typetype
- The type including any generics and/or metadataobject
- The object to encodeCodecException
- When the result cannot be encodedpublic <T,B> ByteBuffer<B> encode(T object, ByteBufferFactory<?,B> allocator) throws CodecException
MediaTypeCodec
ByteBuffer
.encode
in interface MediaTypeCodec
T
- The generic typeB
- The buffer typeobject
- The object to encodeallocator
- The allocatorCodecException
- When the result cannot be encodedpublic <T,B> ByteBuffer<B> encode(Argument<T> type, T object, ByteBufferFactory<?,B> allocator) throws CodecException
MediaTypeCodec
ByteBuffer
.encode
in interface MediaTypeCodec
T
- The generic typeB
- The buffer typetype
- The type including any generics and/or metadataobject
- The object to encodeallocator
- The allocatorCodecException
- When the result cannot be encoded