Class ContractCompanion<Ct,​Id,​Data>

  • Type Parameters:
    Ct - The Contract subclass generated within the template class.
    Id - The ContractId subclass generated within the template class.
    Data - The generated Template subclass named after the template, whose instances contain only the payload.
    Direct Known Subclasses:
    ContractCompanion.WithKey, ContractCompanion.WithoutKey

    public abstract class ContractCompanion<Ct,​Id,​Data>
    extends ContractTypeCompanion
    Metadata and utilities associated with a template as a whole, rather than one single contract made from that template.
    • Field Detail

      • newContractId

        protected final java.util.function.Function<java.lang.String,​Id> newContractId
      • fromValue

        protected final java.util.function.Function<DamlRecord,​Data> fromValue
    • Constructor Detail

      • ContractCompanion

        protected ContractCompanion​(java.lang.String templateClassName,
                                    Identifier templateId,
                                    java.util.function.Function<java.lang.String,​Id> newContractId,
                                    java.util.function.Function<DamlRecord,​Data> fromValue)
    • Method Detail

      • fromCreatedEvent

        public abstract Ct fromCreatedEvent​(CreatedEvent event)
        Tries to parse a contract from an event expected to create a Ct contract.
        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 the CreatedEvent.arguments cannot be parsed as Data, or the CreatedEvent.contractKey cannot be parsed as Key.
      • toContractId

        public Id toContractId​(ContractId<Data> parameterizedContractId)