Interface ConsensualLedgerTransaction

  • All Implemented Interfaces:

    @DoNotImplement() 
    public interface ConsensualLedgerTransaction
    
                        

    Defines a consensual ledger transaction.

    Comparing with ConsensualSignedTransaction: - It has access to the deserialized details. - It does not have direct access to the signatures. - It requires a serializer.

    ConsensualLedgerTransaction is an abstraction that is meant to be used during the transaction verification stage. It needs full access to its states that might be in transactions that are encrypted and unavailable for code running outside the secure enclave. Also, it might need to deserialize states with code that might not be available on the classpath.

    Because of this, trying to create or use a ConsensualLedgerTransaction for any other purpose than transaction verification can result in unexpected exceptions, which need de be handled.

    ConsensualLedgerTransaction should never be instantiated directly from client code, but rather via toLedgerTransaction.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      abstract SecureHash getId() Gets the ID of the current transaction.
      abstract Set<PublicKey> getRequiredSignatories() Gets a set of signatories that are required for transaction validity; essentially the union of the participants of the current transaction's states.
      abstract Instant getTimestamp() Gets the timestamp of the current transaction, which is when it was initially signed.
      abstract List<ConsensualState> getStates() Gets the output states of the current transaction.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail

      • getId

        @NotNull() abstract SecureHash getId()

        Gets the ID of the current transaction.

      • getRequiredSignatories

        @NotNull() abstract Set<PublicKey> getRequiredSignatories()

        Gets a set of signatories that are required for transaction validity; essentially the union of the participants of the current transaction's states.

      • getTimestamp

        @NotNull() abstract Instant getTimestamp()

        Gets the timestamp of the current transaction, which is when it was initially signed.