Interface | Description |
---|---|
TraversableTransaction |
Implemented by
class WireTransaction and class FilteredLeaves . A TraversableTransaction allows you to iterate
over the flattened components of the underlying transaction structure, taking into account that some
may be missing in the case of this representing a "torn" transaction. Please see the user guide section
"Transaction tear-offs" to learn more about this feature. |
Class | Description |
---|---|
BaseTransaction |
An abstract class defining fields shared by all transaction types in the system.
|
FilteredLeaves |
Class that holds filtered leaves for a partial Merkle transaction. We assume mixed leaf types, notice that every
field from
class WireTransaction can be used in class PartialMerkleTree calculation. |
FilteredTransaction |
Class representing merkleized filtered transaction.
|
LedgerTransaction |
A LedgerTransaction is derived from a
class WireTransaction . It is the result of doing the following operations: |
MerkleTransactionKt | |
SignedTransaction |
SignedTransaction wraps a serialized WireTransaction. It contains one or more signatures, each one for
a public key that is mentioned inside a transaction command. SignedTransaction is the top level transaction type
and the type most frequently passed around the network and stored. The identity of a transaction is the hash
of a WireTransaction, therefore if you are storing data keyed by WT hash be aware that multiple different STs may
map to the same key (and they could be different in important ways, like validity!). The signatures on a
SignedTransaction might be invalid or missing: the type does not imply validity.
A transaction ID should be the hash of the
class WireTransaction Merkle tree root. Thus adding or removing a signature does not change it. |
TransactionBuilder |
A TransactionBuilder is a transaction class that's mutable (unlike the others which are all immutable). It is
intended to be passed around contracts that may edit it by adding new states/commands. Then once the states
and commands are right, this class can be used as a holding bucket to gather signatures from multiple parties.
|
WireTransaction |
A transaction ready for serialisation, without any signatures attached. A WireTransaction is usually wrapped
by a
class SignedTransaction that carries the signatures over this payload. The hash of the wire transaction is
the identity of the transaction, that is, it's possible for two class SignedTransaction s with different sets of
signatures to have the same identity hash. |