Package io.micronaut.serde.support
Class DefaultSerdeRegistry.ByteArraySerde
java.lang.Object
io.micronaut.serde.support.DefaultSerdeRegistry.ByteArraySerde
- All Implemented Interfaces:
Deserializer<byte[]>
,Serde<byte[]>
,Serializer<byte[]>
- Enclosing class:
- DefaultSerdeRegistry
@Singleton
@Internal
public static final class DefaultSerdeRegistry.ByteArraySerde
extends Object
implements Serde<byte[]>
Serde for byte arrays. Nested class for binary compatibility.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.micronaut.serde.Deserializer
Deserializer.DecoderContext
Nested classes/interfaces inherited from interface io.micronaut.serde.Serializer
Serializer.EncoderContext
-
Constructor Summary
ConstructorsConstructorDescriptionByteArraySerde
(boolean writeLegacyByteArrays) ByteArraySerde
(SerdeConfiguration serdeConfiguration) -
Method Summary
Modifier and TypeMethodDescriptionbyte[]
deserialize
(Decoder decoder, Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super byte[]> type) Deserializes from the current state of theDecoder
an object of typeDeserializer
.byte[]
deserializeNullable
(@NonNull Decoder decoder, @NonNull Deserializer.DecoderContext context, @NonNull io.micronaut.core.type.Argument<? super byte[]> type) Deserializes from the current state of theDecoder
an object of typeDeserializer
.boolean
isEmpty
(Serializer.EncoderContext context, byte[] value) Used forJsonInclude.Include#NON_EMPTY
checking.void
serialize
(Encoder encoder, Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends byte[]> type, byte[] value) Serializes the given value using the passedEncoder
.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.micronaut.serde.Deserializer
allowNull, createSpecific, getDefaultValue
Methods inherited from interface io.micronaut.serde.Serializer
createSpecific, isAbsent
-
Constructor Details
-
ByteArraySerde
-
ByteArraySerde
@Internal public ByteArraySerde(boolean writeLegacyByteArrays)
-
-
Method Details
-
deserialize
public byte[] deserialize(Decoder decoder, Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super byte[]> type) throws IOException Description copied from interface:Deserializer
Deserializes from the current state of theDecoder
an object of typeDeserializer
.- Specified by:
deserialize
in interfaceDeserializer<byte[]>
- Parameters:
decoder
- The decoder, nevernull
decoderContext
- The decoder context, nevernull
type
- The generic type to be deserialized- Returns:
- The deserialized object or
null
only ifDeserializer.allowNull()
returnstrue
- Throws:
IOException
- If an error occurs during deserialization of the object
-
deserializeNullable
public byte[] deserializeNullable(@NonNull @NonNull Decoder decoder, @NonNull @NonNull Deserializer.DecoderContext context, @NonNull @NonNull io.micronaut.core.type.Argument<? super byte[]> type) throws IOException Description copied from interface:Deserializer
Deserializes from the current state of theDecoder
an object of typeDeserializer
. If the decoder value isnull
, this must be permitted. By default, in this case, this method will returnnull
.- Specified by:
deserializeNullable
in interfaceDeserializer<byte[]>
- Parameters:
decoder
- The decoder, nevernull
context
- The decoder context, nevernull
type
- The generic type to be deserialized- Returns:
- The deserialized object or
null
- Throws:
IOException
- If an error occurs during deserialization of the object
-
serialize
public void serialize(Encoder encoder, Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends byte[]> type, byte[] value) throws IOException Description copied from interface:Serializer
Serializes the given value using the passedEncoder
.- Specified by:
serialize
in interfaceSerializer<byte[]>
- Parameters:
encoder
- The encoder to usecontext
- The encoder context, nevernull
type
- Models the generic type of the valuevalue
- The value, can benull
- Throws:
IOException
- If an error occurs during serialization
-
isEmpty
Description copied from interface:Serializer
Used forJsonInclude.Include#NON_EMPTY
checking.- Specified by:
isEmpty
in interfaceSerializer<byte[]>
- Parameters:
context
- The encoder contextvalue
- The check to check- Returns:
- Return
true
if the value is empty
-