Package io.micronaut.rabbitmq.serdes
Interface RabbitMessageSerDes<T>
- Type Parameters:
T- The type to be serialized/deserialized
- All Superinterfaces:
io.micronaut.core.order.Ordered
- All Known Implementing Classes:
JavaLangRabbitMessageSerDes,JsonRabbitMessageSerDes
public interface RabbitMessageSerDes<T>
extends io.micronaut.core.order.Ordered
Responsible for serializing and deserializing RabbitMQ message bodies.
- Since:
- 1.1.0
- Author:
- James Kleeh
-
Field Summary
Fields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Method Summary
Modifier and TypeMethodDescriptiondeserialize(RabbitConsumerState consumerState, io.micronaut.core.type.Argument<T> argument) Deserializes the message into the requested type.@io.micronaut.core.annotation.Nullable byte[]serialize(T data, MutableBasicProperties properties) Serializes the data into a byte[] to be published to RabbitMQ.booleanDetermines if this serdes supports the given type.Methods inherited from interface io.micronaut.core.order.Ordered
getOrder
-
Method Details
-
deserialize
@Nullable T deserialize(RabbitConsumerState consumerState, io.micronaut.core.type.Argument<T> argument) Deserializes the message into the requested type.- Parameters:
consumerState- The message to deserializeargument- The type to be returned- Returns:
- The deserialized body
-
serialize
@Nullable @io.micronaut.core.annotation.Nullable byte[] serialize(@Nullable T data, MutableBasicProperties properties) Serializes the data into a byte[] to be published to RabbitMQ.- Parameters:
data- The data to serializeproperties- The properties of the message- Returns:
- The message body
-
supports
Determines if this serdes supports the given type.- Parameters:
type- The type- Returns:
- True if the type is supported
-