org.springframework.webflow.execution
Interface FlowExecutionKeyFactory

All Known Implementing Classes:
AbstractFlowExecutionRepository, AbstractSnapshottingFlowExecutionRepository, DefaultFlowExecutionRepository, MockFlowExecutionKeyFactory

public interface FlowExecutionKeyFactory

A factory for creating flow execution keys. Used to generate a persistent identity for a flow execution that needs to be persisted.

Author:
Keith Donald

Method Summary
 FlowExecutionKey getKey(FlowExecution execution)
          Get the key to assign to the flow execution.
 void removeAllFlowExecutionSnapshots(FlowExecution execution)
          Remove all snapshots associated with the flow execution from storage, invalidating all history.
 void removeFlowExecutionSnapshot(FlowExecution execution)
          Remove the snapshot that was used to restore this flow execution, discarding it for future use.
 void updateFlowExecutionSnapshot(FlowExecution execution)
          Capture the current state of the flow execution by updating its snapshot in storage.
 

Method Detail

getKey

FlowExecutionKey getKey(FlowExecution execution)
Get the key to assign to the flow execution. This factory simply generates the key to assign, it does not actually perform the key assignment.

Parameters:
execution - the flow execution
Returns:
the key to assign to the flow execution

updateFlowExecutionSnapshot

void updateFlowExecutionSnapshot(FlowExecution execution)
Capture the current state of the flow execution by updating its snapshot in storage. Does nothing if the no key has been assigned or no snapshot has already been taken.

Parameters:
execution - the flow execution

removeFlowExecutionSnapshot

void removeFlowExecutionSnapshot(FlowExecution execution)
Remove the snapshot that was used to restore this flow execution, discarding it for future use. Does nothing if the no key been assigned or no snapshot has been taken.

Parameters:
execution - the flow execution

removeAllFlowExecutionSnapshots

void removeAllFlowExecutionSnapshots(FlowExecution execution)
Remove all snapshots associated with the flow execution from storage, invalidating all history. Does nothing if no key has been assigned or no snapshots have been taken.

Parameters:
execution - the flow execution