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.
<init> |
CordaRPCOpsImpl(services: ServiceHub, smm: StateMachineManager, database: Database)
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. |
database |
val database: Database |
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 |
addVaultTransactionNote |
fun addVaultTransactionNote(txnId: SecureHash, txnNote: String): Unit |
attachmentExists |
fun attachmentExists(id: SecureHash): Boolean
Checks whether an attachment with the given hash is stored on the node. |
currentNodeTime |
fun currentNodeTime(): Instant
Returns the node's current time. |
getVaultTransactionNotes |
fun getVaultTransactionNotes(txnId: SecureHash): Iterable<String> |
networkMapUpdates |
fun networkMapUpdates(): Pair<List<NodeInfo>, Observable<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 Node's identity, assuming this will not change while the node is running. |
partyFromKey |
fun partyFromKey(key: CompositeKey): Party?
Returns the Party corresponding to the given key, if found. |
partyFromName |
fun partyFromName(name: String): Party?
Returns the Party with the given name as it's Party.name |
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(): Pair<List<StateMachineTransactionMapping>, Observable<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(): Pair<List<StateMachineInfo>, Observable<StateMachineUpdate>>
Returns a pair of currently in-progress state machine infos and an observable of future state machine adds/removes. |
uploadAttachment |
fun uploadAttachment(jar: InputStream): SecureHash
Uploads a jar to the node, returns it's hash. |
uploadFile |
fun uploadFile(dataType: String, name: String?, file: InputStream): String |
vaultAndUpdates |
fun vaultAndUpdates(): Pair<List<StateAndRef<ContractState>>, Observable<Update>>
Returns a pair of head states in the vault and an observable of future updates to the vault. |
verifiedTransactions |
fun verifiedTransactions(): Pair<List<SignedTransaction>, Observable<SignedTransaction>>
Returns a pair of all recorded transactions and an observable of future recorded ones. |
waitUntilRegisteredWithNetworkMap |
fun waitUntilRegisteredWithNetworkMap(): ListenableFuture<Unit>
Returns a ListenableFuture which completes when the node has registered wih the network map service. It can also complete with an exception if it is unable to. |
startFlow |
fun <T : Any, R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: () -> R): FlowHandle<T>
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): FlowHandle<T> fun <T : Any, A, B, R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A, B) -> R, arg0: A, arg1: B): FlowHandle<T> fun <T : Any, A, B, C, R : FlowLogic<T>> CordaRPCOps.startFlow(flowConstructor: (A, B, C) -> R, arg0: A, arg1: B, arg2: C): FlowHandle<T> 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): FlowHandle<T> |