Package io.temporal.payload.codec
Interface PayloadCodec
-
- All Known Implementing Classes:
ChainCodec,CodecDataConverter,ZlibPayloadCodec
public interface PayloadCodecCodec that encodes or decodes the given payloads.PayloadCodecimplementation may be used inCodecDataConverteror server side in a Remote Data Encoder implementation.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description java.util.List<io.temporal.api.common.v1.Payload>decode(java.util.List<io.temporal.api.common.v1.Payload> payloads)java.util.List<io.temporal.api.common.v1.Payload>encode(java.util.List<io.temporal.api.common.v1.Payload> payloads)default PayloadCodecwithContext(SerializationContext context)A correct implementation of this interface should have a fully functional "contextless" implementation.
-
-
-
Method Detail
-
encode
@Nonnull java.util.List<io.temporal.api.common.v1.Payload> encode(@Nonnull java.util.List<io.temporal.api.common.v1.Payload> payloads)
-
decode
@Nonnull java.util.List<io.temporal.api.common.v1.Payload> decode(@Nonnull java.util.List<io.temporal.api.common.v1.Payload> payloads)
-
withContext
@Nonnull default PayloadCodec withContext(@Nonnull SerializationContext context)
A correct implementation of this interface should have a fully functional "contextless" implementation. Temporal SDK will call this method when a knowledge of the context exists, butDataConvertercan be used directly by user code and sometimes SDK itself without any context.Note: this method is expected to be cheap and fast. Temporal SDK doesn't always cache the instances and may be calling this method very often. Users are responsible to make sure that this method doesn't recreate expensive objects like Jackson's
ObjectMapperon every call.- Parameters:
context- provides information to the data converter about the abstraction the data belongs to- Returns:
- an instance of DataConverter that may use the provided
contextfor serialization - See Also:
SerializationContext
-
-