01: /*
02: * Copyright 2001-2007 Geert Bevin <gbevin[remove] at uwyn dot com>
03: * Distributed under the terms of either:
04: * - the common development and distribution license (CDDL), v1.0; or
05: * - the GNU Lesser General Public License, v2.1 or later
06: * $Id: CallState.java 3812 2007-06-25 17:04:34Z gbevin $
07: */
08: package com.uwyn.rife.continuations;
09:
10: /**
11: * Contains the state of a call continuation.
12: * <p>The only really important property is the continuation ID, which should
13: * contain the ID of the continuation context that was active when the call
14: * was triggered.
15: * <p>The state property is totally optional and is there to be used in case
16: * other state needs to be preserved for a call continuation. RIFE's web
17: * engine, for instance, uses it to tie an element's execution state to a call
18: * continuation.
19: *
20: * @author Geert Bevin (gbevin[remove] at uwyn dot com)
21: * @version $Revision: 3812 $
22: * @since 1.6
23: */
24: public class CallState {
25: final private String mContinuationId;
26: final private Object mState;
27:
28: /**
29: * Creates a new {@code CallState} instance.
30: *
31: * @param continuationId the continuation context ID that triggered the
32: * call continuation
33: * @param state the optional state that should be tied to the call
34: * continuation
35: * @since 1.6
36: */
37: public CallState(final String continuationId, final Object state) {
38: mContinuationId = continuationId;
39: mState = state;
40: }
41:
42: /**
43: * Retrieves the ID of the continuation that triggered the call.
44: *
45: * @return the call continuation's ID
46: * @since 1.6
47: */
48: public String getContinuationId() {
49: return mContinuationId;
50: }
51:
52: /**
53: * Retrieves the optional state that is tied to the call continuation.
54: *
55: * @return the call continuation's optional state; or
56: * <p>{@code null} if no additional state is tied to it
57: * @since 1.6
58: */
59: public Object getState() {
60: return mState;
61: }
62: }
|