クラス State
java.lang.ObjectSE
org.springframework.webflow.core.AnnotatedObject
org.springframework.webflow.engine.State
- 実装されたすべてのインターフェース:
Annotated
,StateDefinition
- 既知の直属サブクラス
EndState
,TransitionableState
フロー内で何かが発生するポイント。何が発生するかは状態の型によって決まります。標準的な状態の型には、アクション状態、ビュー状態、サブフロー状態、終了状態などがあります。
各状態は、正確に 1 つの所有フロー定義に関連付けられます。このクラスの特殊化により、特定の種類の状態に必要なすべての構成情報が取得されます。
サブクラスは、構成情報に基づいて、この状態に入ったときに発生する処理を実行するために、doEnter
メソッドを実装する必要があります。さまざまな動作を実行するカスタム状態型をプラグインする機能は、典型的な GoF 状態パターンです。
等価: 2 つの状態は同じ ID を持ち、同じフローの一部である場合に等しくなります。
- 作成者:
- Keith Donald, Erwin Vervaet
- 関連事項:
フィールドのサマリー
フィールドクラス org.springframework.webflow.core.AnnotatedObject から継承されたフィールド
CAPTION_PROPERTY, DESCRIPTION_PROPERTY
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected void
appendToString
(org.springframework.core.style.ToStringCreator creator) サブクラスはこのフックメソッドをオーバーライドして、内部状態を文字列に出力できます。protected abstract void
doEnter
(RequestControlContext context) この状態に入った結果としてカスタム動作を実行するフックメソッド。protected void
doPreEntryActions
(RequestControlContext context) 状態エントリ時に状態エントリアクションを実行する前に実行するフックメソッド。final void
enter
(RequestControlContext context) 提供されたフロー制御コンテキストでこの状態を入力します。boolean
この状態に入ったときに実行されるアクションのリストを返します。変更可能な例外ハンドラーのセットを返します。これにより、この状態内でスローされたときに例外がどのように処理されるかを操作できます。getFlow()
所有フローを返します。getId()
フロー定義を含むローカルに一意のこの状態の識別子を返します。getOwner()
この状態が属するフロー定義を返します。boolean
handleException
(FlowExecutionException exception, RequestControlContext context) 現在のフロー実行リクエストのコンテキスト中にこの状態で発生した例外を処理します。int
hashCode()
boolean
この状態が所有フローの開始状態であるかどうかを示すフラグを返します。boolean
この状態がビュー状態である場合は true を返します。toString()
クラス org.springframework.webflow.core.AnnotatedObject から継承されたメソッド
getAttributes, getCaption, getDescription, setCaption, setDescription
クラス java.lang.ObjectSE から継承されたメソッド
clone, finalize, getClass, notify, notifyAll, wait, waitSE, waitSE
インターフェース org.springframework.webflow.core.Annotated から継承されたメソッド
getAttributes, getCaption, getDescription
フィールドの詳細
logger
protected final org.apache.commons.logging.Log loggerサブクラスで使用するためのロガー。
コンストラクターの詳細
State
提供されたid
によって識別される、提供されたflow
の状態を作成します。ID は、所有フローに対してローカルに一意である必要があります。状態はフローに自動的に追加されます。- パラメーター:
flow
- 所有の流れid
- 状態識別子 (フローごとに一意である必要があります)- 例外:
IllegalArgumentExceptionSE
- この状態をフローに追加できない場合、たとえば、指定された ID が所有フロー内で一意でない場合など- 関連事項:
メソッドの詳細
getOwner
インターフェースからコピーされた説明:StateDefinition
この状態が属するフロー定義を返します。- 次で指定:
- インターフェース
StateDefinition
のgetOwner
- 戻り値:
- 所有フローの定義
getId
インターフェースからコピーされた説明:StateDefinition
フロー定義を含むローカルに一意のこの状態の識別子を返します。- 次で指定:
- インターフェース
StateDefinition
のgetId
- 戻り値:
- 状態識別子
isViewState
public boolean isViewState()インターフェースからコピーされた説明:StateDefinition
この状態がビュー状態である場合は true を返します。- 次で指定:
- インターフェース
StateDefinition
のisViewState
- 戻り値:
- ビュー状態の場合は true、それ以外の場合は false
getFlow
所有フローを返します。getEntryActionList
この状態に入ったときに実行されるアクションのリストを返します。返されるリストは変更可能です。- 戻り値:
- 状態入国アクションリスト
getExceptionHandlerSet
変更可能な例外ハンドラーのセットを返します。これにより、この状態内でスローされたときに例外がどのように処理されるかを操作できます。この状態に入ったときに例外が発生すると例外ハンドラーが呼び出され、カスタム例外処理ロジックを実行したり、表示するエラービューを選択したりできます。
- 戻り値:
- 状態例外ハンドラーセット
isStartState
public boolean isStartState()この状態が所有フローの開始状態であるかどうかを示すフラグを返します。- 戻り値:
- フローが開始状態の場合は true、それ以外の場合は false
equals
hashCode
public int hashCode()enter
提供されたフロー制御コンテキストでこの状態に入ります。この実装では、エントリアクションを実行した後、サブクラスで実装する必要があるdoEnter(RequestControlContext)
フックメソッドを呼び出すだけです。- パラメーター:
context
- 現在実行中のフローの制御コンテキスト。この状態によってフロー実行を操作するために使用されます- 例外:
FlowExecutionException
- この状態で例外が発生した場合
doPreEntryActions
状態に入るときに状態に入るアクションを実行する前に実行するフックメソッド。デフォルトでは何もしません。サブクラスでオーバーライドできます。- パラメーター:
context
- リクエスト制御コンテキスト- 例外:
FlowExecutionException
- 例外が発生した場合
doEnter
この状態に入った結果としてカスタム動作を実行するためのフックメソッド。このメソッドを実装することにより、サブクラスは状態の動作を特化します。- パラメーター:
context
- 現在実行中のフローの制御コンテキスト。この状態によってフロー実行を操作するために使用されます- 例外:
FlowExecutionException
- この状態で例外が発生した場合
handleException
現在のフロー実行リクエストのコンテキスト中にこの状態で発生した例外を処理します。- パラメーター:
exception
- 発生した例外context
- フロー実行制御コンテキスト
toString
appendToString
protected void appendToString(org.springframework.core.style.ToStringCreator creator) サブクラスはこのフックメソッドをオーバーライドして、内部状態を文字列に出力できます。このデフォルトの実装では何も行われません。- パラメーター:
creator
- toString クリエーターは、プロパティを文字列に出力します- 関連事項: