net.corda.core.contracts / TransactionType / General

# General

`class General : TransactionType`

A general transaction type where transaction validity is determined by custom contract code

### Types

Builder | `class Builder : TransactionBuilder` Just uses the default TransactionBuilder with no special logic

### Constructors

<init> | `General()` A general transaction type where transaction validity is determined by custom contract code

### Functions

getRequiredSigners | `fun getRequiredSigners(tx: LedgerTransaction): <ERROR CLASS>` Return the list of public keys that that require signatures for the transaction type. Note: the notary key is checked separately for all transactions and need not be included.
verifyTransaction | `fun verifyTransaction(tx: LedgerTransaction): Unit` Check the transaction is contract-valid by running the verify() for each input and output state contract. If any contract fails to verify, the whole transaction is considered to be invalid.

### Inherited Functions

equals | `open fun equals(other: Any?): Boolean`
hashCode | `open fun hashCode(): <ERROR CLASS>`
verify | `fun verify(tx: LedgerTransaction): Unit` Check that the transaction is valid based on:
verifySigners | `fun verifySigners(tx: LedgerTransaction): Set<PublicKeyTree>` Check that the list of signers includes all the necessary keys