001: /*
002: @COPYRIGHT@
003: */
004: package demo.webflow;
005:
006: //import org.springframework.webflow.UnmodifiableAttributeMap;
007: import org.springframework.webflow.core.collection.AttributeMap;
008: import org.springframework.webflow.core.collection.LocalAttributeMap;
009: import org.springframework.webflow.core.collection.MutableAttributeMap;
010: import org.springframework.webflow.definition.FlowDefinition;
011: import org.springframework.webflow.definition.StateDefinition;
012: import org.springframework.webflow.engine.Flow;
013: import org.springframework.webflow.engine.State;
014: import org.springframework.webflow.execution.EnterStateVetoException;
015: import org.springframework.webflow.execution.Event;
016: import org.springframework.webflow.execution.FlowExecutionException;
017: import org.springframework.webflow.execution.FlowExecutionListener;
018: import org.springframework.webflow.execution.FlowSession;
019: import org.springframework.webflow.execution.RequestContext;
020: import org.springframework.webflow.execution.ViewSelection;
021:
022: /**
023: * Flow execution listener used to capture execution history
024: */
025: public class WebFlowHistory implements FlowExecutionListener {
026: public void sessionStarted(RequestContext ctx,
027: FlowSession flowSession) {
028: //String id = ctx.getFlowExecutionContext().getActiveSession().getFlow().getId();
029: String id = ctx.getFlowExecutionContext().getActiveSession()
030: .getDefinition().getId();
031: System.err.println("### WebFlowHistory.sessionStarted() " + id);
032: }
033:
034: public void stateEntering(RequestContext ctx, State state)
035: throws EnterStateVetoException {
036: //String id = ctx.getFlowExecutionContext().getActiveSession().getFlow().getId();
037: String id = ctx.getFlowExecutionContext().getActiveSession()
038: .getDefinition().getId();
039: System.err.println("### WebFlowHistory.stateEntering() " + id);
040: }
041:
042: // public void sessionEnded(RequestContext ctx, FlowSession flowSession, UnmodifiableAttributeMap attributeMap)
043: public void sessionEnded(RequestContext ctx,
044: FlowSession flowSession, LocalAttributeMap attributeMap) {
045: //String id = ctx.getFlowExecutionContext().getActiveSession().getFlow().getId();
046: String id = ctx.getFlowExecutionContext().getActiveSession()
047: .getDefinition().getId();
048: System.err.println("### WebFlowHistory.sessionEnded() " + id);
049: }
050:
051: public void sessionEnding(RequestContext ctx,
052: FlowSession flowSession, AttributeMap attributeMap) {
053: //String id = flowSession.getFlow().getId();
054: String id = flowSession.getDefinition().getId();
055: }
056:
057: public void sessionStarting(RequestContext context,
058: FlowDefinition definition, MutableAttributeMap input) {
059: // TODO
060: }
061:
062: public void stateEntered(RequestContext ctx, State previousState,
063: State state) {
064: // TODO
065: }
066:
067: public void eventSignaled(RequestContext ctx, Event event) {
068: // TODO
069: }
070:
071: public void paused(RequestContext ctx, ViewSelection viewSelection) {
072: // TODO
073: }
074:
075: public void requestProcessed(RequestContext ctx) {
076: // TODO
077: }
078:
079: public void requestSubmitted(RequestContext ctx) {
080: // TODO
081: }
082:
083: public void resumed(RequestContext ctx) {
084: // TODO
085: }
086:
087: public void exceptionThrown(RequestContext context,
088: FlowExecutionException exception) {
089: // TODO
090: }
091:
092: public void sessionEnded(RequestContext context,
093: FlowSession session, AttributeMap output) {
094: // TODO
095: }
096:
097: public void sessionEnding(RequestContext context,
098: FlowSession session, MutableAttributeMap output) {
099: // TODO
100: }
101:
102: public void stateEntered(RequestContext context,
103: StateDefinition previousState, StateDefinition state) {
104: // TODO
105: }
106:
107: public void stateEntering(RequestContext context,
108: StateDefinition state) {
109: // TODO
110: }
111: }
|