ServicesForResolution - corda

corda / net.corda.core.node / ServicesForResolution

# ServicesForResolution

`@DoNotImplement interface ServicesForResolution`

Subset of node services that are used for loading transactions from the wire into fully resolved, looked up forms ready for verification.

### Properties

#### attachments | Provides access to storage of arbitrary JAR files (which may contain only data, no code). `abstract val attachments: AttachmentStorage`
#### cordappProvider | Provides access to anything relating to cordapps including contract attachment resolution and app context `abstract val cordappProvider: CordappProvider`
#### identityService | An identity service maintains a directory of parties by their associated distinguished name/public keys and thus supports lookup of a party given its key, or name. The service also manages the certificates linking confidential identities back to the well known identity (i.e. the identity in the network map) of a party. `abstract val identityService: IdentityService`
#### networkParameters | Returns the network parameters the node is operating under. `abstract val networkParameters: NetworkParameters`
#### networkParametersService | Provides access to historical network parameters that are used in transaction resolution. `abstract val networkParametersService: NetworkParametersService`

### Functions

#### loadContractAttachment | Returns the Attachment that defines the given StateRef, which must be in the visible subset of the ledger. `abstract fun loadContractAttachment(stateRef: StateRef): Attachment`
#### loadState | Given a StateRef loads the referenced transaction and looks up the specified output ContractState. `abstract fun loadState(stateRef: StateRef): TransactionState<*>`
#### loadStates | Given a Set of StateRef's loads the referenced transaction and looks up the specified output ContractState. `abstract fun loadStates(stateRefs: Set<StateRef>): Set<StateAndRef<ContractState>>`
#### specialise | Provides a callback for the Node to customise the LedgerTransaction. `open fun specialise(ltx: LedgerTransaction): LedgerTransaction`

### Inheritors

#### ServiceHub | A service hub is the starting point for most operations you can do inside the node. You are provided with one when a class annotated with CordaService is constructed, and you have access to one inside flows. Most RPCs simply forward to the services found here after some access checking. `interface ServiceHub : ServicesForResolution`