インターフェース RequestControlContext
- すべてのスーパーインターフェース:
RequestContext
- すべての既知の実装クラス:
MockRequestControlContext
1 つのクライアントリクエストのコンテキストで進行中のフロー実行を操作するために使用される可変制御インターフェース。主に、さまざまなフローアーティファクトが呼び出されたときに内部的に使用されます。
このインターフェースは、中心的な Flow
クラスや State
クラスなどのコア定義構造のファサードとして機能し、ランタイム実行マシンに関する詳細を抽象化します。
この型は FlowExecutionContext
と同じではないことに注意してください。この型のオブジェクトはリクエスト固有です。つまり、1 つのリクエストから 1 つのフロー実行をローカルに操作するための制御インターフェースを提供します。FlowExecutionContext
は単一のフロー実行 (会話) に関する情報を提供し、そのスコープは特定のリクエスト (またはスレッド) に対してローカルではありません。
- 作成者:
- Keith Donald, Erwin Vervaet
- 関連事項:
メソッドのサマリー
修飾子と型メソッド説明進行中のフロー実行にフロー実行キーを割り当てます。void
endActiveFlowSession
(StringSE outcome, MutableAttributeMap<ObjectSE> output) 現在のフロー実行のアクティブなフローセッションを終了します。boolean
execute
(Transition transition) 現在のソース状態からこの遷移を実行します。boolean
フローの現在のフロー実行が埋め込みページモードで開始された場合は true を返します。boolean
設定されている場合、「同じ状態でリダイレクト」フロー実行属性の値を返します。設定されていない場合は、getRedirectOnPause()
によって返される値にフォールバックします。boolean
「一時停止時にリダイレクト」フロー実行属性が true に設定されている場合は true を返し、それ以外の場合は false を返します。boolean
handleEvent
(Event event) このフロー実行リクエストコンテキストの現在の状態でイベントが発生したことを通知します。void
進行中の会話に関連付けられているすべてのフロー実行スナップショットを削除します。void
現在のフロー実行スナップショットを削除して、現在の状態を無効にします。void
setCurrentState
(State state) 実行中のフローに入力された現在の状態を記録します。void
setCurrentTransition
(Transition transition) フロー内で実行される遷移を記録します。void
setCurrentView
(View view) 現在のビューを設定します。void
start
(Flow flow, MutableAttributeMap<?> input) 新しいフローセッションを生成し、現在実行中のフロー内でアクティブ化します。void
現在のフロー実行スナップショットを更新して、現在の状態を保存します。void
viewRendered
(View view) 現在のビューが現在のビュー状態でレンダリングを完了したときに呼び出されます。void
viewRendering
(View view) 現在のビューが現在のビュー状態でレンダリングされるときに呼び出されます。インターフェース org.springframework.webflow.execution.RequestContext から継承されたメソッド
getActiveFlow, getAttributes, getConversationScope, getCurrentEvent, getCurrentState, getCurrentTransition, getCurrentView, getExternalContext, getFlashScope, getFlowExecutionContext, getFlowExecutionUrl, getFlowScope, getMatchingTransition, getMessageContext, getRequestParameters, getRequestScope, getViewScope, inViewState
メソッドの詳細
setCurrentState
実行中のフローに入力された現在の状態を記録します。このメソッドは、State 型自体によって新しい状態に入る際に呼び出されます。- パラメーター:
state
- 現在の状態- 関連事項:
assignFlowExecutionKey
FlowExecutionKey assignFlowExecutionKey()進行中のフロー実行にフロー実行キーを割り当てます。このメソッドは、状態がビューをレンダリングしてフロー実行を一時停止する前に呼び出されます。setCurrentView
現在のビューを設定します。- パラメーター:
view
- 現在のビュー、または現在のビューをnull
としてマークする場合は null
viewRendering
現在のビューが現在のビュー状態でレンダリングされるときに呼び出されます。- パラメーター:
view
- レンダリングされるビュー
viewRendered
現在のビューが現在のビュー状態でレンダリングを完了したときに呼び出されます。- パラメーター:
view
- レンダリングされたビュー
handleEvent
このフロー実行リクエストコンテキストの現在の状態でイベントが発生したことを通知します。このメソッドは、アクション状態などの内部イベントの発生を報告するクライアントによって呼び出されます。フロー実行に関係するフローのonEvent()
メソッドが呼び出されます。- パラメーター:
event
- 起こった出来事- 戻り値:
- このイベントの処理によって現在の状態が終了し、新しい状態になったかどうかを示すブール値
- 例外:
FlowExecutionException
- この signalEvent 操作の実行中にフローの状態内で例外がスローされた場合- 関連事項:
execute
現在のソース状態からこの遷移を実行します。任意の遷移の特権実行を許可します。- パラメーター:
transition
- トランジション- 関連事項:
setCurrentTransition
フロー内で実行されている遷移を記録します。このメソッドは、ある状態から別の状態への遷移の実行の一部として呼び出されます。- パラメーター:
transition
- 実行中の遷移- 関連事項:
updateCurrentFlowExecutionSnapshot
void updateCurrentFlowExecutionSnapshot()現在のフロー実行スナップショットを更新して、現在の状態を保存します。removeCurrentFlowExecutionSnapshot
void removeCurrentFlowExecutionSnapshot()現在のフロー実行スナップショットを削除して、現在の状態を無効にします。removeAllFlowExecutionSnapshots
void removeAllFlowExecutionSnapshots()進行中の会話に関連付けられているすべてのフロー実行スナップショットを削除します。以前の状態を無効にします。start
新しいフローセッションを生成し、現在実行中のフローでアクティブ化します。また、生成されたフローを開始状態に遷移します。このメソッドは、サブフロー状態などの新しいフローを生成するクライアントによって呼び出される必要があります。これにより、すでにアクティブな現在のフロー実行で新しいフローセッションが開始されます。
- パラメーター:
flow
- フローを開始するには、そのstart()
メソッドが呼び出されますinput
- 新しく作成されたフローセッションの初期内容 (null
の場合もある(例: 空))- 例外:
FlowExecutionException
- この開始操作の実行中にフローの状態内で例外がスローされた場合- 関連事項:
endActiveFlowSession
void endActiveFlowSession(StringSE outcome, MutableAttributeMap<ObjectSE> output) throws IllegalStateExceptionSE 現在のフロー実行のアクティブなフローセッションを終了します。このメソッドは、終了状態などのフローを終了するクライアントによって呼び出されます。フロー実行に関係するフローのend()
メソッドが呼び出されます。- パラメーター:
outcome
- 終了セッションが返す論理的な結果output
- 終了セッションが返す出力- 例外:
IllegalStateExceptionSE
- フロー実行がアクティブでないとき- 関連事項:
getRedirectOnPause
boolean getRedirectOnPause()「一時停止時にリダイレクト」フロー実行属性が true に設定されている場合は true を返し、それ以外の場合は false を返します。- 戻り値:
- 正しいか間違っているか
getRedirectInSameState
boolean getRedirectInSameState()設定されている場合、「同じ状態でリダイレクト」フロー実行属性の値を返します。設定されていない場合は、getRedirectOnPause()
によって返される値にフォールバックします。- 戻り値:
- 正しいか間違っているか
getEmbeddedMode
boolean getEmbeddedMode()フローの現在のフロー実行が埋め込みページモードで開始された場合は true を返します。フローがページに埋め込まれている場合、投稿後のリダイレクトが必要かどうかに関して異なる仮定を行うことができます。