object ActionDescription extends HasProtocolVersionedCompanion[ActionDescription]
- Alphabetic
- By Inheritance
- ActionDescription
- HasProtocolVersionedCompanion2
- HasProtocolVersionedWrapperWithoutContextCompanion
- HasProtocolVersionedWrapperCompanion
- Serializable
- HasSupportedProtoVersions
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- final case class CreateActionDescription(contractId: LfContractId, seed: LfHash, version: LfTransactionVersion)(representativeProtocolVersion: RepresentativeProtocolVersion[ActionDescription.type]) extends ActionDescription with Product with Serializable
- type DataByteString = ByteString
- Definition Classes
- HasProtocolVersionedWrapperCompanion
- type Deserializer = (DataByteString) => ParsingResult[ActionDescription]
- Definition Classes
- HasProtocolVersionedCompanion2 → HasSupportedProtoVersions
- final case class ExerciseActionDescription extends ActionDescription with Product with Serializable
- Exceptions thrown
InvalidActionDescription
if thechosen_value
cannot be serialized
- final case class FetchActionDescription extends ActionDescription with NoCopy with Product with Serializable
- final case class InvalidActionDescription(message: String) extends RuntimeException with PrettyPrinting with Product with Serializable
- final case class LookupByKeyActionDescription extends ActionDescription with Product with Serializable
- type OriginalByteString = ByteString
- Definition Classes
- HasProtocolVersionedWrapperCompanion
- type Serializer = (ActionDescription) => ByteString
- Definition Classes
- HasSupportedProtoVersions
- type ThisRepresentativeProtocolVersion = RepresentativeProtocolVersion[ActionDescription.this.type]
- Attributes
- protected
- Definition Classes
- HasSupportedProtoVersions
- case class DefaultValueFromInclusive[T](attribute: (ValueClass) => T, attributeName: String, startInclusive: ThisRepresentativeProtocolVersion, defaultValue: T) extends DefaultValue[T] with Product with Serializable
- Definition Classes
- HasSupportedProtoVersions
- case class DefaultValueUntilExclusive[T](attribute: (ValueClass) => T, attributeName: String, untilExclusive: ThisRepresentativeProtocolVersion, defaultValue: T) extends DefaultValue[T] with Product with Serializable
- Definition Classes
- HasSupportedProtoVersions
- case class EmptyOptionExactlyUntilExclusive[T](attribute: (ValueClass) => Option[T], attributeName: String, untilExclusive: ThisRepresentativeProtocolVersion) extends DefaultValue[Option[T]] with Product with Serializable
- Definition Classes
- HasSupportedProtoVersions
- trait Invariant extends AnyRef
- Definition Classes
- HasSupportedProtoVersions
- 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]
- Definition Classes
- HasSupportedProtoVersions
- case class OneElementSeqExactlyUntilExclusive[T](attribute: (ValueClass) => Seq[T], attributeName: String, untilExclusive: ThisRepresentativeProtocolVersion) extends DefaultValue[Seq[T]] with Product with Serializable
- Definition Classes
- HasSupportedProtoVersions
- sealed trait ProtoCodec extends AnyRef
Base class for (de)serializing from/to protobuf of ValueClass from a specific PV
Base class for (de)serializing from/to protobuf of ValueClass from a specific PV
- Definition Classes
- HasSupportedProtoVersions
- case class SupportedProtoVersions extends Product with Serializable
- Definition Classes
- HasSupportedProtoVersions
- case class UnsupportedProtoCodec(fromInclusive: RepresentativeProtocolVersion[HasSupportedProtoVersions.this.type]) extends ProtoCodec with PrettyPrinting with Product with Serializable
- Attributes
- protected[this]
- Definition Classes
- HasSupportedProtoVersions
- case class VersionedProtoConverter extends ProtoCodec with PrettyPrinting with Product with Serializable
Supported Proto version
Supported Proto version
- Attributes
- protected[this]
- Definition Classes
- HasSupportedProtoVersions
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()
- def deserializationErrorK(error: ProtoDeserializationError): (DataByteString) => ParsingResult[ActionDescription]
- Attributes
- protected
- Definition Classes
- HasProtocolVersionedCompanion2 → HasSupportedProtoVersions
- def deserializeForVersion(rpv: RepresentativeProtocolVersion[ActionDescription.this.type], deserializeLegacyProto: (Deserializer) => ParsingResult[ActionDescription], deserializeVersionedProto: => ParsingResult[ActionDescription]): ParsingResult[ActionDescription]
- Attributes
- protected
- Definition Classes
- HasProtocolVersionedWrapperCompanion
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def fromByteArrayUnsafe(bytes: Array[Byte]): ParsingResult[ActionDescription]
Deserializes the given bytes without validation.
Deserializes the given bytes without validation.
Unsafe! Do NOT use this method unless you can justify that the given bytes originate from a trusted source. For example, this should be the case for deserialization of data that originates a database.
- bytes
trusted bytes with an embedded proto version
- Definition Classes
- HasProtocolVersionedCompanion2
- def fromByteString(expectedProtocolVersion: ProtocolVersionValidation)(bytes: OriginalByteString): ParsingResult[ActionDescription]
Variation of
fromByteString
that takes aProtocolVersionValidation
instead of aProtocolVersion
.Variation of
fromByteString
that takes aProtocolVersionValidation
instead of aProtocolVersion
.Use this method when sometimes no protocol version can be passed for the
expectedProtocolVersion
. For these cases useProtocolVersionValidation.NoValidation
.- Definition Classes
- HasProtocolVersionedCompanion2 → HasProtocolVersionedWrapperWithoutContextCompanion
- def fromByteString(expectedProtocolVersion: ProtocolVersion)(bytes: OriginalByteString): ParsingResult[ActionDescription]
Deserializes the given bytes and checks that the therein embedded proto version matches the
expectedProtocolVersion
.Deserializes the given bytes and checks that the therein embedded proto version matches the
expectedProtocolVersion
.Use this method whenever the origin of the given bytes cannot be trusted, and for example the proto version message field may be set maliciously. This should be your default choice for deserialization.
- expectedProtocolVersion
the protocol version on which the sync domain is running on
- bytes
an untrusted byte string with an embedded proto version
- Definition Classes
- HasProtocolVersionedCompanion2 → HasProtocolVersionedWrapperWithoutContextCompanion
- def fromByteStringLegacy(protocolVersion: ProtocolVersion)(bytes: OriginalByteString): ParsingResult[ActionDescription]
Use this method when deserializing bytes for classes that have a legacy proto converter to explicitly set the version to use for the deserialization.
Use this method when deserializing bytes for classes that have a legacy proto converter to explicitly set the version to use for the deserialization.
- protocolVersion
protocol version of the bytes to be deserialized
- bytes
data
- Definition Classes
- HasProtocolVersionedCompanion2
- def fromByteStringUnsafe(bytes: OriginalByteString): ParsingResult[ActionDescription]
Deserializes the given bytes without validation.
Deserializes the given bytes without validation.
Unsafe! Do NOT use this method unless you can justify that the given bytes originate from a trusted source.
- bytes
a trusted byte string with an embedded proto version
- Definition Classes
- HasProtocolVersionedCompanion2 → HasProtocolVersionedWrapperWithoutContextCompanion
- def fromLfActionNode(actionNode: LfActionNode, seedO: Option[LfHash], packagePreference: Set[LfPackageId], protocolVersion: ProtocolVersion): Either[InvalidActionDescription, ActionDescription]
Extracts the action description from an LF node and the optional seed.
Extracts the action description from an LF node and the optional seed.
- seedO
Must be set iff
node
is a com.digitalasset.canton.protocol.LfNodeCreate or com.digitalasset.canton.protocol.LfNodeExercises.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- implicit def hasVersionedWrapperGetResult(implicit getResultByteArray: GetResult[Array[Byte]]): GetResult[ActionDescription]
- Definition Classes
- HasProtocolVersionedCompanion2
- implicit def hasVersionedWrapperGetResultO(implicit getResultByteArray: GetResult[Option[Array[Byte]]]): GetResult[Option[ActionDescription]]
- Definition Classes
- HasProtocolVersionedCompanion2
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def invariants: Seq[Invariant]
- Definition Classes
- HasSupportedProtoVersions
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- lazy val name: String
The name of the class as used for pretty-printing and error reporting
The name of the class as used for pretty-printing and error reporting
- Definition Classes
- ActionDescription → HasProtocolVersionedWrapperCompanion → HasSupportedProtoVersions
- 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 parseDelimitedFromUnsafe(input: InputStream): Option[ParsingResult[ActionDescription]]
Deserializes a message using a delimiter (the message length) from the given input stream.
Deserializes a message using a delimiter (the message length) from the given input stream.
Unsafe! No deserialization validation is performed.
Do NOT use this method unless you can justify that the given bytes originate from a trusted source.
This method works in conjunction with com.digitalasset.canton.version.HasProtocolVersionedWrapper.writeDelimitedTo which should have been used to serialize the message. It is useful for deserializing multiple messages from a single input stream through repeated invocations.
Deserialization is only supported for com.digitalasset.canton.version.VersionedMessage.
- input
the source from which a message is deserialized
- returns
an Option that is None when there are no messages left anymore, otherwise it wraps an Either where left represents a deserialization error (exception) and right represents the successfully deserialized message
- Definition Classes
- HasProtocolVersionedCompanion2
- def protoVersionFor(protocolVersion: ProtocolVersion): ProtoVersion
Return the Proto version corresponding to the protocol version
Return the Proto version corresponding to the protocol version
- Definition Classes
- HasSupportedProtoVersions
- def protoVersionFor(protocolVersion: RepresentativeProtocolVersion[ActionDescription.this.type]): ProtoVersion
Return the Proto version corresponding to the representative protocol version
Return the Proto version corresponding to the representative protocol version
- Definition Classes
- HasSupportedProtoVersions
- def protocolVersionRepresentativeFor(protoVersion: ProtoVersion): ParsingResult[RepresentativeProtocolVersion[ActionDescription.this.type]]
Return the representative protocol version corresponding to the proto version
Return the representative protocol version corresponding to the proto version
- Definition Classes
- HasSupportedProtoVersions
- def protocolVersionRepresentativeFor(protocolVersion: ProtocolVersion): RepresentativeProtocolVersion[ActionDescription.this.type]
- Definition Classes
- HasSupportedProtoVersions
- def readFromFileUnsafe(inputFile: String): Either[String, ActionDescription]
Deserializes the data from the given file without validation.
Deserializes the data from the given file without validation.
Unsafe! Do NOT use this method unless you can justify that the data originates from a trusted source.
- Definition Classes
- HasProtocolVersionedCompanion2
- def serializeChosenValue(chosenValue: Value, transactionVersion: LfTransactionVersion): Either[String, ByteString]
- def supportedProtoVersion[Proto <: GeneratedMessage](p: GeneratedMessageCompanion[Proto])(fromProto: (Proto) => ParsingResult[ActionDescription]): Deserializer
- Attributes
- protected
- Definition Classes
- HasProtocolVersionedCompanion2
- val supportedProtoVersions: SupportedProtoVersions
Proto versions that are supported by
fromByteString
See the helpersupportedProtoVersion
below to define aParser
.Proto versions that are supported by
fromByteString
See the helpersupportedProtoVersion
below to define aParser
.- Definition Classes
- ActionDescription → HasSupportedProtoVersions
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def tryFromLfActionNode(actionNode: LfActionNode, seedO: Option[LfHash], packagePreference: Set[LfPackageId], protocolVersion: ProtocolVersion): ActionDescription
- def tryProtocolVersionRepresentativeFor(protoVersion: ProtoVersion): RepresentativeProtocolVersion[ActionDescription.this.type]
Returns the representative protocol version corresponding to the proto version, throws otherwise.
Returns the representative protocol version corresponding to the proto version, throws otherwise.
- Definition Classes
- HasSupportedProtoVersions
- def tryReadFromFileUnsafe(inputFile: String): ActionDescription
Deserializes the data from the given file without validation.
Deserializes the data from the given file without validation.
Unsafe! Do NOT use this method unless you can justify that the data originates from a trusted source.
- Definition Classes
- HasProtocolVersionedCompanion2
- def validateInstance(instance: ActionDescription, representativeProtocolVersion: ThisRepresentativeProtocolVersion): Either[String, Unit]
Will check that default value rules defined in
companionObj.defaultValues
hold.Will check that default value rules defined in
companionObj.defaultValues
hold.- Definition Classes
- HasProtocolVersionedWrapperCompanion
- 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 ExerciseActionDescription extends Serializable
- object FetchActionDescription extends Serializable
- object LookupByKeyActionDescription extends Serializable
- object LegacyProtoConverter extends Serializable
- Definition Classes
- HasSupportedProtoVersions
- object SupportedProtoVersions extends Serializable
- Definition Classes
- HasSupportedProtoVersions
- object UnsupportedProtoCodec extends Serializable
- Definition Classes
- HasSupportedProtoVersions
- object VersionedProtoConverter extends Serializable
- Definition Classes
- HasSupportedProtoVersions