net.corda.node.internal / CordaRPCOpsImpl

# CordaRPCOpsImpl

`class CordaRPCOpsImpl : CordaRPCOps`

Server side implementations of RPCs available to MQ based client tools. Execution takes place on the server thread (i.e. serially). Arguments are serialised and deserialised automatically.

### Constructors

<init> | `CordaRPCOpsImpl(services: ServiceHub, smm: StateMachineManager, database: <ERROR CLASS>)` Server side implementations of RPCs available to MQ based client tools. Execution takes place on the server thread (i.e. serially). Arguments are serialised and deserialised automatically.

### Properties

database | `val database: <ERROR CLASS>`
protocolVersion | `val protocolVersion: Int` Returns the RPC protocol version. Exists since version 0 so guaranteed to be present.
services | `val services: ServiceHub`
smm | `val smm: StateMachineManager`

### Functions

addVaultTransactionNote | `fun addVaultTransactionNote(txnId: SecureHash, txnNote: String): Unit`
getVaultTransactionNotes | `fun getVaultTransactionNotes(txnId: SecureHash): Iterable<String>`
networkMapUpdates | `fun networkMapUpdates(): <ERROR CLASS><List<NodeInfo>, <ERROR CLASS><MapChange>>` Returns all parties currently visible on the network with their advertised services and an observable of future updates to the network.
nodeIdentity | `fun nodeIdentity(): NodeInfo` Returns Nodes identity, assuming this will not change while the node is running.
startFlowDynamic | `fun <T : Any> startFlowDynamic(logicType: Class<out FlowLogic<T>>, vararg args: Any?): FlowHandle<T>` Start the given flow with the given arguments, returning an Observable with a single observation of the result of running the flow.
stateMachineRecordedTransactionMapping | `fun stateMachineRecordedTransactionMapping(): <ERROR CLASS><List<StateMachineTransactionMapping>, <ERROR CLASS><StateMachineTransactionMapping>>` Returns a snapshot list of existing state machine id - recorded transaction hash mappings, and a stream of future such mappings as well.
stateMachinesAndUpdates | `fun stateMachinesAndUpdates(): <ERROR CLASS><List<StateMachineInfo>, <ERROR CLASS><StateMachineUpdate>>` Returns a pair of currently in-progress state machine infos and an observable of future state machine adds/removes.
vaultAndUpdates | `fun vaultAndUpdates(): <ERROR CLASS><List<StateAndRef<ContractState>>, <ERROR CLASS><Update>>` Returns a pair of head states in the vault and an observable of future updates to the vault.
verifiedTransactions | `fun verifiedTransactions(): <ERROR CLASS><List<SignedTransaction>, <ERROR CLASS><SignedTransaction>>` Returns a pair of all recorded transactions and an observable of future recorded ones.

### Extension Functions

startFlow | `fun <T : Any, R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: () -> R): <ERROR CLASS>` These allow type safe invocations of flows from Kotlin, e.g.: `fun <T : Any, A, R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A) -> R, arg0: A): <ERROR CLASS>` `fun <T : Any, A, B, R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A, B) -> R, arg0: A, arg1: B): <ERROR CLASS>` `fun <T : Any, A, B, C, R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A, B, C) -> R, arg0: A, arg1: B, arg2: C): <ERROR CLASS>` `fun <T : Any, A, B, C, D, R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A, B, C, D) -> R, arg0: A, arg1: B, arg2: C, arg3: D): <ERROR CLASS>`