Stores flow execution state client side, requiring no use of server-side
state.
More specifically, instead of putting
FlowExecution objects in a
server-side store this repository encodes them directly into the
continuationId of the generated
FlowExecutionKey .
When asked to load a flow execution by its key this repository decodes the
serialized continuationId, restoring the
FlowExecution object at the state it was in when encoded.
Note: currently this repository implementation does not by default support
conversation management.
Stores one to many flow execution continuations (snapshots) per
conversation, where each continuation represents a paused, restorable
view-state of a flow execution snapshotted at a point in time.
The set of active user conversations are managed by a
ConversationManager implementation, which this repository delegates
to.
This repository is responsible for:
Beginning a new conversation when a new flow execution is made
persistent.