Interface PayloadSerde

All Superinterfaces:
PayloadDeserializer, PayloadSerializer
All Known Implementing Classes:
JacksonPayloadSerde

public interface PayloadSerde extends PayloadSerializer, PayloadDeserializer
Pluggable payload serialization for structured values and arguments.

The primary contract is String-based because structuredContent is always parsed into the protocol model by the Jackson parser before encoding — raw bytes never reach the wire — and non-Jackson serdes (kotlinx.serialization, gson) emit Strings natively. byte[] round-trips added conversions without saving any.

All parameters are non-null. Passing null to PayloadSerializer.serialize(Object) or PayloadDeserializer.deserialize(String, java.lang.reflect.Type) is undefined and may throw.

Values reaching PayloadSerializer.serialize(Object) must be typed the implementation understands. JsonDocument values bypass the serde.

Author:
Konstantin Pavlov