net.corda.core.messaging / CordaRPCOps

# CordaRPCOps

`interface CordaRPCOps : RPCOps`

RPC operations that the node exposes to clients using the Java client library. These can be called from client apps and are implemented by the node in the CordaRPCOpsImpl class.

### Inherited Properties

protocolVersion | `abstract val protocolVersion: Int` Returns the RPC protocol version. Exists since version 0 so guaranteed to be present.

### Functions

addVaultTransactionNote | `abstract fun addVaultTransactionNote(txnId: SecureHash, txnNote: String): Unit`
attachmentExists | `abstract fun attachmentExists(id: SecureHash): Boolean` Checks whether an attachment with the given hash is stored on the node.
currentNodeTime | `abstract fun currentNodeTime(): Instant` Returns the node-local current time.
getVaultTransactionNotes | `abstract fun getVaultTransactionNotes(txnId: SecureHash): Iterable<String>`
networkMapUpdates | `abstract 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 | `abstract fun nodeIdentity(): NodeInfo` Returns Nodes identity, assuming this will not change while the node is running.
partyFromKey | `abstract fun partyFromKey(key: CompositeKey): Party?` Returns the Party corresponding to the given key, if found.
partyFromName | `abstract fun partyFromName(name: String): Party?` Returns the Party with the given name as its Party.name
startFlowDynamic | `abstract 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 | `abstract 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 | `abstract 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.
uploadAttachment | `abstract fun uploadAttachment(jar: InputStream): SecureHash` Uploads a jar to the node, returns its hash.
vaultAndUpdates | `abstract 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 | `abstract 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>`

### Inheritors

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.