zio.temporal.protobuf
Protobuf-aware conveniences.
The important members here are scalapbMessageZTemporalCodec and scalapbSealedOneofZTemporalCodec, which auto-derive a ZTemporalCodec for any ScalaPB-generated scalapb.GeneratedMessage or scalapb.GeneratedSealedOneof. The zio-json JsonEncoder/JsonDecoder carried by those codecs are deliberate stubs that must never actually run — the encoder throws, the decoder fails with a Left(msg) decode error — at runtime, ScalapbPayloadConverter handles protobuf types before zio.temporal.json.ZioJsonPayloadConverter is reached in ProtobufDataConverter's chain, so the stubs are never called.
'''Scope warning — the JsonEncoder/JsonDecoder bridges are deliberately not provided at the package-object level.''' They live in ScalapbJsonImplicits and must be imported explicitly, because making them globally implicit-visible would hijack every zio-json call site the user has for protobuf types — including any unrelated logging/HTTP use — and cause it to throw at runtime.
Use them only where zio-json's own derivation needs to see encoder/decoder evidence for a protobuf type inside a generic structure (e.g. Either[Foo, MyProtobufMsg]).
Attributes
Members list
Type members
Classlikes
A BigDecimal encoded as scale with BigInteger value
A BigDecimal encoded as scale with BigInteger value
Attributes
- Companion
- object
- Supertypes
-
trait Updatable[BigDecimal]trait GeneratedMessagetrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrortrait GeneratedMessageCompanion[BigDecimal]trait Serializableclass Objecttrait Matchableclass AnyShow all
- Self type
-
BigDecimal.type
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrortrait GeneratedMessageCompanion[BigInteger]trait Serializableclass Objecttrait Matchableclass AnyShow all
- Self type
-
BigInteger.type
A BigInteger bytes representation
A BigInteger bytes representation
Attributes
- Companion
- object
- Supertypes
-
trait Updatable[BigInteger]trait GeneratedMessagetrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
EnumProtoType.type
Attributes
- Supertypes
-
class AnyValtrait Matchableclass Any
Attributes
- Supertypes
-
class RuntimeExceptionclass Exceptionclass Throwabletrait Serializableclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object ProtoType
Optional is a scala.Option like type representing either value or null. Untyped due to absence of generic in protocol buffers
Optional is a scala.Option like type representing either value or null. Untyped due to absence of generic in protocol buffers
Attributes
Attributes
Typeclass allowing conversion to protocol buffers supported type
Typeclass allowing conversion to protocol buffers supported type
Type parameters
- A
-
value type
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
Thrown in case of deserialization errors
Thrown in case of deserialization errors
Attributes
- Supertypes
-
class Exceptionclass Throwabletrait Serializableclass Objecttrait Matchableclass AnyShow all
Result is a scala.Either like type representing either error or some value. Untyped due to absence of generic in protocol buffers
Result is a scala.Either like type representing either error or some value. Untyped due to absence of generic in protocol buffers
Attributes
Opt-in zio-json encoder/decoder bridges for ScalaPB-generated types.
Opt-in zio-json encoder/decoder bridges for ScalaPB-generated types.
These are needed only when you want zio-json to derive a codec for a generic structure that contains a protobuf type — e.g. JsonEncoder[Either[MyProtobufMsg, String]]. Importing this object brings JsonEncoder[A <: GeneratedMessage] and JsonDecoder[A <: GeneratedMessage] (and the sealed-oneof variants) into implicit scope.
''Do not import globally.'' These encoders/decoders are stubs that must never actually run — the encoder throws, the decoder fails with a Left(msg) decode error — they are meant to live inside a ZTemporalCodec whose actual serialization is handled by ScalapbPayloadConverter earlier in the chain. If they leak into the user's wider zio-json usage (logs, HTTP handlers, etc.) protobuf serialization will fail at runtime.
Import it locally where needed:
import zio.temporal.protobuf.ScalapbJsonImplicits._
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ScalapbJsonImplicits.type
Attributes
- Companion
- class
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
Used to deserialize protobuf generated types
Used to deserialize protobuf generated types
Attributes
- Companion
- object
- Supertypes
-
trait PayloadConverterclass Objecttrait Matchableclass Any
A UUID, encoded in accordance with section 4.1.2 of RFC 4122.
Empty message which should be used as a result type for activities and workflows with no return value
Attributes
- Supertypes
-
class GeneratedFileObjectclass Objecttrait Matchableclass Any
- Self type
-
ZioTemporalProto.type
Givens
Givens
ZTemporalCodec[A] for any GeneratedMessage. Safe to import globally — the zio-json encoder/decoder the codec carries are internal and never leak into the user's wider implicit scope.
ZTemporalCodec[A] for any GeneratedMessage. Safe to import globally — the zio-json encoder/decoder the codec carries are internal and never leak into the user's wider implicit scope.