corda / net.corda.core.transactions / LedgerTransaction / <init>

# <init>

`LedgerTransaction(inputs: List<StateAndRef<*>>, outputs: List<TransactionState<ContractState>>, commands: List<AuthenticatedObject<CommandData>>, attachments: List<Attachment>, id: SecureHash, notary: Party?, signers: List<CompositeKey>, timestamp: Timestamp?, type: TransactionType)`

A LedgerTransaction is derived from a WireTransaction. It is the result of doing the following operations:

- Downloading and locally storing all the dependencies of the transaction.
- Resolving the input states and loading them into memory.
- Doing some basic key lookups on the Commands to see if any keys are from a recognised party, thus converting the Command objects into AuthenticatedObject.
- Deserialising the output states.

All the above refer to inputs using a (txhash, output index) pair.