corda/testing/node-driver
Kyriakos Tharrouniatis 22d92d5ef0
CORDA-3809 Expose client side unique RPC ID for flow starts (#6307)
Introducing a new flow start method (`startFlowDynamicWithClientId`) passing in a `clientId`.

Once `startFlowDynamicWithClientId` gets called, the `clientId` gets injected into `InvocationContext` and also pushed to the logging context.

If a new flow starts with this method, then a < `clientId` to flow > pair is kept on node side, even after the flow's lifetime. If `startFlowDynamicWithClientId` is called again with the same `clientId` then the node identifies that this `clientId` refers to an existing < `clientId` to flow > pair and returns back to the rpc client a `FlowStateMachineHandle` future, created out of that pair.

`FlowStateMachineHandle` interface was introduced as a thinner `FlowStateMachine`. All `FlowStateMachine` properties used by call sites are moved into this new interface along with `clientId` and then `FlowStateMachine` extends it.

Introducing an acknowledgement method (`removeClientId`). Calling this method removes the < `clientId` to flow > pair on the node side and frees resources.
2020-07-16 10:52:08 +01:00
..
src CORDA-3809 Expose client side unique RPC ID for flow starts (#6307) 2020-07-16 10:52:08 +01:00
build.gradle INFRA-415: Add empty javadoc to node-driver (#6429) 2020-07-02 16:17:34 +01:00
README.md INFRA-415: Add empty javadoc to node-driver (#6429) 2020-07-02 16:17:34 +01:00

corda-node-driver.

This artifact is the node-driver used for testing Corda.