trait HasSupportedProtoVersions[ValueClass] extends AnyRef
This trait has the logic to store proto (de)serializers and retrieve them by protocol version.
- Alphabetic
- By Inheritance
- HasSupportedProtoVersions
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- case class DefaultValueFromInclusive[T](attribute: (ValueClass) => T, attributeName: String, startInclusive: ThisRepresentativeProtocolVersion, defaultValue: T) extends DefaultValue[T] with Product with Serializable
- case class DefaultValueUntilExclusive[T](attribute: (ValueClass) => T, attributeName: String, untilExclusive: ThisRepresentativeProtocolVersion, defaultValue: T) extends DefaultValue[T] with Product with Serializable
- abstract type Deserializer
- case class EmptyOptionExactlyUntilExclusive[T](attribute: (ValueClass) => Option[T], attributeName: String, untilExclusive: ThisRepresentativeProtocolVersion) extends DefaultValue[Option[T]] with Product with Serializable
- trait Invariant extends AnyRef
- case class LegacyProtoConverter extends ProtoCodec with PrettyPrinting with Product with Serializable
Used to (de)serialize classes which for legacy reasons where not wrapped in VersionedMessage Chances are this is NOT the class you want to use, use VersionedProtoConverter instead when adding serialization to a new class
Used to (de)serialize classes which for legacy reasons where not wrapped in VersionedMessage Chances are this is NOT the class you want to use, use VersionedProtoConverter instead when adding serialization to a new class
- Attributes
- protected[this]
- case class OneElementSeqExactlyUntilExclusive[T](attribute: (ValueClass) => Seq[T], attributeName: String, untilExclusive: ThisRepresentativeProtocolVersion) extends DefaultValue[Seq[T]] with Product with Serializable
- sealed trait ProtoCodec extends AnyRef
Base class for (de)serializing from/to protobuf of ValueClass from a specific PV
- type Serializer = (ValueClass) => ByteString
- case class SupportedProtoVersions extends Product with Serializable
- type ThisRepresentativeProtocolVersion = RepresentativeProtocolVersion[HasSupportedProtoVersions.this.type]
- Attributes
- protected
- case class UnsupportedProtoCodec(fromInclusive: RepresentativeProtocolVersion[HasSupportedProtoVersions.this.type]) extends ProtoCodec with PrettyPrinting with Product with Serializable
- Attributes
- protected[this]
- case class VersionedProtoConverter extends ProtoCodec with PrettyPrinting with Product with Serializable
Supported Proto version
Supported Proto version
- Attributes
- protected[this]
Abstract Value Members
- abstract def deserializationErrorK(error: ProtoDeserializationError): Deserializer
- Attributes
- protected
- abstract def name: String
The name of the class as used for pretty-printing and error reporting
- abstract def supportedProtoVersions: SupportedProtoVersions
Proto versions that are supported by
fromByteString
See the helpersupportedProtoVersion
below to define aParser
.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def invariants: Seq[Invariant]
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def protoVersionFor(protocolVersion: ProtocolVersion): ProtoVersion
Return the Proto version corresponding to the protocol version
- def protoVersionFor(protocolVersion: RepresentativeProtocolVersion[HasSupportedProtoVersions.this.type]): ProtoVersion
Return the Proto version corresponding to the representative protocol version
- def protocolVersionRepresentativeFor(protoVersion: ProtoVersion): ParsingResult[RepresentativeProtocolVersion[HasSupportedProtoVersions.this.type]]
Return the representative protocol version corresponding to the proto version
- def protocolVersionRepresentativeFor(protocolVersion: ProtocolVersion): RepresentativeProtocolVersion[HasSupportedProtoVersions.this.type]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def tryProtocolVersionRepresentativeFor(protoVersion: ProtoVersion): RepresentativeProtocolVersion[HasSupportedProtoVersions.this.type]
Returns the representative protocol version corresponding to the proto version, throws otherwise.
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- object LegacyProtoConverter extends Serializable
- object SupportedProtoVersions extends Serializable
- object UnsupportedProtoCodec extends Serializable
- object VersionedProtoConverter extends Serializable