Class ContractTypeCompanion<Ct,Id,ContractType,Data>
- java.lang.Object
-
- com.daml.ledger.javaapi.data.codegen.ContractTypeCompanion<Ct,Id,ContractType,Data>
-
- Type Parameters:
Ct
- The specific type ofContract
representing contracts from the ledger. Always a subtype ofContract<Id, Data>
.Id
- The code-generated class ofContractId
s specific to this template or interface. Always a subtype ofContractId<ContractType>
.ContractType
- The type argument toContractId
s of this contract type. This is the same asData
for templates, but is a pure marker type for interfaces.Data
- The "payload" data model for a contract. This is the template payload for templates, and the view type for interfaces.
- Direct Known Subclasses:
ContractCompanion
,InterfaceCompanion
public abstract class ContractTypeCompanion<Ct,Id,ContractType,Data> extends java.lang.Object
The commonality betweenContractCompanion
andInterfaceCompanion
.
-
-
Field Summary
Fields Modifier and Type Field Description java.util.Map<java.lang.String,Choice<ContractType,?,?>>
choices
The provides a mapping of choice name to Choice.Identifier
TEMPLATE_ID
The full template ID of the template or interface that defined this companion.Identifier
TEMPLATE_ID_WITH_PACKAGE_ID
The full template ID of the template or interface that defined this companion.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract Ct
fromCreatedEvent(CreatedEvent event)
Tries to parse a contract from an event expected to create aCt
contract.Id
toContractId(ContractId<ContractType> parameterizedContractId)
Convert from a genericContractId
to the specific contract ID subclass generated as part of this companion's template or interface.
-
-
-
Field Detail
-
TEMPLATE_ID
public final Identifier TEMPLATE_ID
The full template ID of the template or interface that defined this companion.
-
TEMPLATE_ID_WITH_PACKAGE_ID
public final Identifier TEMPLATE_ID_WITH_PACKAGE_ID
The full template ID of the template or interface that defined this companion.
-
choices
public final java.util.Map<java.lang.String,Choice<ContractType,?,?>> choices
The provides a mapping of choice name to Choice.// if you statically know the name of a choice var c1 = Bar.COMPANION.choices.get("Transfer"); // it is better to retrieve it directly from the generated field var c2 = Bar.CHOICE_Transfer;
-
-
Method Detail
-
fromCreatedEvent
public abstract Ct fromCreatedEvent(CreatedEvent event) throws java.lang.IllegalArgumentException
Tries to parse a contract from an event expected to create aCt
contract. This is either theCreatedEvent.getArguments()
forContractCompanion
, or one ofCreatedEvent.getInterfaceViews()
for anInterfaceCompanion
.- Parameters:
event
- the event to try to parse a contract from- Returns:
- The parsed contract, with payload and metadata, if present.
- Throws:
java.lang.IllegalArgumentException
- when theCreatedEvent
payload cannot be parsed asData
, or theCreatedEvent.getContractKey()
cannot be parsed as a contract key.
-
toContractId
public final Id toContractId(ContractId<ContractType> parameterizedContractId)
Convert from a genericContractId
to the specific contract ID subclass generated as part of this companion's template or interface. Most applications should not need this function, but if your Daml data types include types likeContractId t
wheret
is any type parameter, that is likely to result in code-generated types likeContractId<t>
that need to be passed to this function before e.g.exercise*
methods can be used.
-
-