TemporalInternalsPayloadConverter

zio.temporal.json.TemporalInternalsPayloadConverter
See theTemporalInternalsPayloadConverter companion object
final class TemporalInternalsPayloadConverter extends PayloadConverter

Handles Temporal Java SDK internal POJOs that leak into the DataConverter chain as part of workflow mechanics the user never writes codecs for.

The only class currently needed is io.temporal.internal.sync.WorkflowRetryerInternal$SerializableRetryOptions, which Workflow.retry serializes through a mutableSideEffect marker so that retry configuration is recorded in the workflow history (see WorkflowRetryerInternal.getRetryOptionsSideEffect). The SDK's default chain has Jackson as the last-resort converter and handles this transparently; since we've deliberately excluded Jackson (zio-temporal is Scala-only and zio-json covers the full user-facing surface), we have to encode this one class explicitly.

The allow-list is kept tight on purpose: open reflection over io.temporal.* would accidentally claim legitimate user-facing types like io.temporal.common.RetryOptions (builder-pattern, nested Duration) whose round-trip semantics are not ours to define.

Attributes

Companion
object
Graph
Supertypes
trait PayloadConverter
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

override def fromData[T](content: Payload, valueClass: Class[T], valueType: Type): T

Attributes

Definition Classes
PayloadConverter
override def getEncodingType: String

Attributes

Definition Classes
PayloadConverter
override def toData(value: Any): Optional[Payload]

Attributes

Definition Classes
PayloadConverter

Inherited methods

@Experimental @Nonnull
def withContext(context: SerializationContext): PayloadConverter

Attributes

Inherited from:
PayloadConverter