Class ContractId<T>

java.lang.Object
com.daml.ledger.javaapi.data.codegen.ContractId<T>
Type Parameters:
T - A template type
All Implemented Interfaces:
Exercises<ExerciseCommand>

public class ContractId<T> extends Object implements Exercises<ExerciseCommand>
This class is used as a super class for all concrete ContractIds generated by the java codegen with the following properties:
 Foo.ContractId fooCid = new Foo.ContractId("test");
 Bar.ContractId barCid = new Bar.ContractId("test");
 ContractId<Foo> genericFooCid = new ContractId<>("test");
 ContractId<Foo> genericBarCid = new ContractId<>("test");

 fooCid.equals(genericFooCid) == true;
 genericFooCid.equals(fooCid) == true;

 fooCid.equals(barCid) == false;
 barCid.equals(fooCid) == false;
 
Due to erase, we cannot distinguish ContractId<Foo> from ContractId<Bar>, thus:
 fooCid.equals(genericBarCid) == true
 genericBarCid.equals(fooCid) == true

 genericFooCid.equals(genericBarCid) == true
 genericBarCid.equals(genericFooCid) == true
 
  • Field Details

    • contractId

      public final String contractId
  • Constructor Details

    • ContractId

      public ContractId(String contractId)
  • Method Details

    • toValue

      public final Value toValue()
    • makeExerciseCmd

      public <A, R> Update<Exercised<R>> makeExerciseCmd(Choice<?,? super A,R> choice, A choiceArgument)
      INTERNAL API: this is meant for use by the Java code generator, and should not be referenced directly. Applications should call choice-specific exercise* methods generated from their Daml code instead.
      Specified by:
      makeExerciseCmd in interface Exercises<T>
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object