クラス AbstractStateMachine<S,E>
java.lang.ObjectSE
org.springframework.statemachine.support.LifecycleObjectSupport
org.springframework.statemachine.support.StateMachineObjectSupport<S,E>
org.springframework.statemachine.support.AbstractStateMachine<S,E>
- 型パラメーター:
S
- 状態の型E
- イベントの型
- 実装されたすべてのインターフェース:
org.springframework.beans.factory.Aware
、org.springframework.beans.factory.BeanFactoryAware
、org.springframework.beans.factory.BeanNameAware
、org.springframework.beans.factory.DisposableBean
、org.springframework.beans.factory.InitializingBean
、org.springframework.context.Lifecycle
、org.springframework.context.Phased
、org.springframework.context.SmartLifecycle
、ReactiveStateMachineAccess<S,
、E> StateMachineAccess<S,
、E> Region<S,
、E> StateMachine<S,
、E> StateMachineReactiveLifecycle
- 既知の直属サブクラス
ObjectStateMachine
public abstract class AbstractStateMachine<S,E>
extends StateMachineObjectSupport<S,E>
implements StateMachine<S,E>, StateMachineAccess<S,E>
UML ステートマシンから大まかにモデル化された
StateMachine
の基本実装。- 作成者:
- Janne Valkealahti
ネストされたクラスのサマリー
クラス org.springframework.statemachine.support.StateMachineObjectSupport から継承されたネストクラス / インターフェース
StateMachineObjectSupport.StateMachineListenerRelay
フィールドのサマリー
インターフェース org.springframework.context.SmartLifecycle から継承されたフィールド
DEFAULT_PHASE
コンストラクターの概要
コンストラクターコンストラクター説明AbstractStateMachine
(CollectionSE<State<S, E>> states, CollectionSE<Transition<S, E>> transitions, State<S, E> initialState) 新しい抽象ステートマシンをインスタンス化します。AbstractStateMachine
(CollectionSE<State<S, E>> states, CollectionSE<Transition<S, E>> transitions, State<S, E> initialState, ExtendedState extendedState) 新しい抽象ステートマシンをインスタンス化します。AbstractStateMachine
(CollectionSE<State<S, E>> states, CollectionSE<Transition<S, E>> transitions, State<S, E> initialState, Transition<S, E> initialTransition, org.springframework.messaging.Message<E> initialEvent, ExtendedState extendedState, UUIDSE uuid) 新しい抽象ステートマシンをインスタンス化します。メソッドのサマリー
修飾子と型メソッド説明void
addStateListener
(StateMachineListener<S, E> listener) 状態リスナーを追加します。void
addStateMachineInterceptor
(StateMachineInterceptor<S, E> interceptor) ステートマシンインターセプターを追加します。void
addStateMachineMonitor
(StateMachineMonitor<S, E> monitor) ステートマシンモニターを追加します。protected void
サブクラスは、破棄ロジックのためにこれを実装できます。protected reactor.core.publisher.Mono<VoidSE>
サブクラスは、開始後のロジック用にこれを実装できます。protected reactor.core.publisher.Mono<VoidSE>
サブクラスは、開始前のロジック用にこれを実装できます。protected reactor.core.publisher.Mono<VoidSE>
サブクラスは、停止前ロジックのためにこれを実装できます。protected reactor.core.publisher.Mono<VoidSE>
executeTriggerlessTransitions
(StateMachine<S, E> stateMachine, StateContext<S, E> stateContext, State<S, E> state) ステートマシンの拡張状態を取得します。getId()
リージョンとステートマシン ID を取得します。初期状態S
を取得します。getState()
現在のState
を取得します。ステートマシンアクセサーを取得します。protected StateMachineExecutor<S,
E> CollectionSE<State<S,
E>> このマシンで定義されているState
を取得します。このリージョンのTransition
を取得します。getUuid()
リージョンとステートマシンの一意の ID を取得します。boolean
ステートマシンエラーをチェックします。boolean
領域が完了しているかどうかを確認します。protected void
notifyEventNotAccepted
(StateContext<S, E> stateContext) protected void
onInit()
サブクラスは、初期化ロジック用にこれを実装できます。void
removeStateListener
(StateMachineListener<S, E> listener) 状態リスナーを削除します。void
resetStateMachine
(StateMachineContext<S, E> stateMachineContext) ステートマシンをリセットします。reactor.core.publisher.Mono<VoidSE>
resetStateMachineReactively
(StateMachineContext<S, E> stateMachineContext) ステートマシンをリアクティブにリセットします。boolean
イベントE
をリージョンに送信します。boolean
Message
でラップされたイベントE
をリージョンに送信します。reactor.core.publisher.Flux<StateMachineEventResult<S,
E>> reactor.core.publisher.Mono<ListSE<StateMachineEventResult<S,
E>>> sendEventCollect
(reactor.core.publisher.Mono<org.springframework.messaging.Message<E>> event) reactor.core.publisher.Flux<StateMachineEventResult<S,
E>> sendEvents
(reactor.core.publisher.Flux<org.springframework.messaging.Message<E>> events) void
setBeanFactory
(org.springframework.beans.factory.BeanFactory beanFactory) void
setForwardedInitialEvent
(org.springframework.messaging.Message<E> message) 初期トランジションでサブ状態に入った際に実行されるアクションのイベントとそのヘッダーを渡すために使用される初期転送イベントを設定します。void
setHistoryState
(PseudoState<S, E> history) void
マシン ID を設定します。void
setInitialEnabled
(boolean enabled) ステートマシンがサブステートを使用しているときに、初期ステートを有効にするかどうかを設定します。void
setParentMachine
(StateMachine<S, E> parentMachine) 親機を設定します。void
setRelay
(StateMachine<S, E> stateMachine) リレーステートマシンを設定します。void
setStateMachineError
(ExceptionSE exception) ステートマシンエラーを設定します。void
setTransitionConflightPolicy
(TransitionConflictPolicy transitionConflictPolicy) 遷移競合ポリシーを設定します。toString()
クラス org.springframework.statemachine.support.StateMachineObjectSupport から継承されたメソッド
doStart, getBeanName, getStateListener, getStateMachineEventPublisher, getStateMachineInterceptors, getStateMachineMonitor, notifyActionMonitor, notifyExtendedStateChanged, notifyStateChanged, notifyStateEntered, notifyStateExited, notifyStateMachineError, notifyStateMachineStarted, notifyStateMachineStopped, notifyTransition, notifyTransitionEnd, notifyTransitionMonitor, notifyTransitionStart, setBeanName, setContextEventsEnabled, setStateMachineEventPublisher, setStateMachineInterceptors
クラス org.springframework.statemachine.support.LifecycleObjectSupport から継承されたメソッド
afterPropertiesSet, destroy, doPostStopReactively, getBeanFactory, getPhase, isAutoStartup, isRunning, setAutoStartup, setPhase, start, startReactively, stop, stopReactively
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース org.springframework.context.SmartLifecycle から継承されたメソッド
stop
インターフェース org.springframework.statemachine.support.StateMachineReactiveLifecycle から継承されたメソッド
startReactively, stopReactively
コンストラクターの詳細
AbstractStateMachine
public AbstractStateMachine(CollectionSE<State<S, E>> states, CollectionSE<Transition<S, E>> transitions, State<S, E> initialState) 新しい抽象ステートマシンをインスタンス化します。- パラメーター:
states
- このマシンの状態transitions
- このマシンのトランジションinitialState
- このマシンの初期状態
AbstractStateMachine
public AbstractStateMachine(CollectionSE<State<S, E>> states, CollectionSE<Transition<S, E>> transitions, State<S, E> initialState, ExtendedState extendedState) 新しい抽象ステートマシンをインスタンス化します。- パラメーター:
states
- このマシンの状態transitions
- このマシンのトランジションinitialState
- このマシンの初期状態extendedState
- このマシンの拡張状態
AbstractStateMachine
public AbstractStateMachine(CollectionSE<State<S, E>> states, CollectionSE<Transition<S, E>> transitions, State<S, E> initialState, Transition<S, E> initialTransition, org.springframework.messaging.Message<E> initialEvent, ExtendedState extendedState, UUIDSE uuid) 新しい抽象ステートマシンをインスタンス化します。- パラメーター:
states
- このマシンの状態transitions
- このマシンのトランジションinitialState
- このマシンの初期状態initialTransition
- 最初の遷移initialEvent
- このマシンの初期イベントextendedState
- このマシンの拡張状態uuid
- このマシンに指定された uuid
メソッドの詳細
getState
インターフェースからコピーされた説明:Region
現在のState
を取得します。getInitialState
インターフェースからコピーされた説明:StateMachine
初期状態S
を取得します。- 次で指定:
- インターフェース
StateMachine<S,
のE> getInitialState
- 戻り値:
- 初期状態
getExtendedState
インターフェースからコピーされた説明:StateMachine
ステートマシンの拡張状態を取得します。- 次で指定:
- インターフェース
StateMachine<S,
のE> getExtendedState
- 戻り値:
- 拡張状態
setHistoryState
- パラメーター:
history
- 内部履歴状態を設定します。
getHistoryState
- 戻り値:
- 履歴状態属性。
sendEvent
インターフェースからコピーされた説明:Region
Message
でラップされたイベントE
をリージョンに送信します。NOTE: このメソッドは、リアクティブなメソッドを支持して非推奨になりました。
notifyEventNotAccepted
- オーバーライド:
- クラス
StateMachineObjectSupport<S,
のE> notifyEventNotAccepted
sendEvent
インターフェースからコピーされた説明:Region
イベントE
をリージョンに送信します。NOTE: このメソッドは、リアクティブなメソッドを支持して非推奨になりました。
sendEvents
public reactor.core.publisher.Flux<StateMachineEventResult<S,E>> sendEvents(reactor.core.publisher.Flux<org.springframework.messaging.Message<E>> events) インターフェースからコピーされた説明:Region
- 次で指定:
- インターフェース
Region<S,
のE> sendEvents
- パラメーター:
events
- そのイベント- 戻り値:
- イベント結果
sendEvent
public reactor.core.publisher.Flux<StateMachineEventResult<S,E>> sendEvent(reactor.core.publisher.Mono<org.springframework.messaging.Message<E>> event) インターフェースからコピーされた説明:Region
sendEventCollect
public reactor.core.publisher.Mono<ListSE<StateMachineEventResult<S,E>>> sendEventCollect(reactor.core.publisher.Mono<org.springframework.messaging.Message<E>> event) インターフェースからコピーされた説明:Region
- 次で指定:
- インターフェース
Region<S,
のE> sendEventCollect
- パラメーター:
event
- 行事- 戻り値:
- イベント結果
onInit
クラスからコピーされた説明:LifecycleObjectSupport
サブクラスは、初期化ロジックのためにこれを実装できます。InitializingBean
フェーズ中に呼び出されます。- オーバーライド:
- クラス
LifecycleObjectSupport
のonInit
- 例外:
ExceptionSE
- 例外
setBeanFactory
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) throws org.springframework.beans.BeansException - 次で指定:
- インターフェース
org.springframework.beans.factory.BeanFactoryAware
のsetBeanFactory
- オーバーライド:
- クラス
LifecycleObjectSupport
のsetBeanFactory
- 例外:
org.springframework.beans.BeansException
doPreStartReactively
クラスからコピーされた説明:LifecycleObjectSupport
サブクラスは、開始前のロジック用にこれを実装できます。- オーバーライド:
- クラス
LifecycleObjectSupport
のdoPreStartReactively
- 戻り値:
- mono で完成
doPostStartReactively
クラスからコピーされた説明:LifecycleObjectSupport
サブクラスは、開始後のロジック用にこれを実装できます。- オーバーライド:
- クラス
LifecycleObjectSupport
のdoPostStartReactively
- 戻り値:
- mono で完成
doPreStopReactively
クラスからコピーされた説明:LifecycleObjectSupport
サブクラスは、停止前ロジックのためにこれを実装できます。- オーバーライド:
- クラス
LifecycleObjectSupport
のdoPreStopReactively
- 戻り値:
- mono で完成
doDestroy
protected void doDestroy()クラスからコピーされた説明:LifecycleObjectSupport
サブクラスは、破棄ロジックのためにこれを実装できます。- オーバーライド:
- クラス
LifecycleObjectSupport
のdoDestroy
setStateMachineError
インターフェースからコピーされた説明:StateMachine
ステートマシンエラーを設定します。- 次で指定:
- インターフェース
StateMachine<S,
のE> setStateMachineError
- パラメーター:
exception
- 新しいステートマシンエラー
hasStateMachineError
public boolean hasStateMachineError()インターフェースからコピーされた説明:StateMachine
ステートマシンエラーをチェックします。- 次で指定:
- インターフェース
StateMachine<S,
のE> hasStateMachineError
- 戻り値:
- true、エラーが設定されている場合
addStateListener
インターフェースからコピーされた説明:Region
状態リスナーを追加します。- 次で指定:
- インターフェース
Region<S,
のE> addStateListener
- パラメーター:
listener
- リスナー
removeStateListener
インターフェースからコピーされた説明:Region
状態リスナーを削除します。- 次で指定:
- インターフェース
Region<S,
のE> removeStateListener
- パラメーター:
listener
- リスナー
isComplete
public boolean isComplete()インターフェースからコピーされた説明:Region
領域が完了しているかどうかを確認します。領域が終了状態に達し、それ以上のイベント処理が発生しない場合、領域は完了したと見なされます。- 次で指定:
- インターフェース
Region<S,
のE> isComplete
- 戻り値:
- true、完全な場合
getStates
このマシンで定義されているState
を取得します。ステートマシンの状態は不変であるため、返されるコレクションは変更不可能なコピーです。getTransitions
インターフェースからコピーされた説明:Region
このリージョンのTransition
を取得します。- 次で指定:
- インターフェース
Region<S,
のE> getTransitions
- 戻り値:
- トランジションの不変コピー
setInitialEnabled
public void setInitialEnabled(boolean enabled) インターフェースからコピーされた説明:StateMachineAccess
ステートマシンがサブステートを使用しているときに、初期ステートを有効にするかどうかを設定します。- 次で指定:
- インターフェース
StateMachineAccess<S,
のE> setInitialEnabled
- パラメーター:
enabled
- 新しいイニシャルが有効になりました
getStateMachineAccessor
インターフェースからコピーされた説明:StateMachine
ステートマシンアクセサーを取得します。- 次で指定:
- インターフェース
StateMachine<S,
のE> getStateMachineAccessor
- 戻り値:
- ステートマシンアクセサー
setRelay
インターフェースからコピーされた説明:StateMachineAccess
リレーステートマシンを設定します。- 次で指定:
- インターフェース
StateMachineAccess<S,
のE> setRelay
- パラメーター:
stateMachine
- ステートマシン
setParentMachine
インターフェースからコピーされた説明:StateMachineAccess
親機を設定します。- 次で指定:
- インターフェース
StateMachineAccess<S,
のE> setParentMachine
- パラメーター:
parentMachine
- ステートマシン
setForwardedInitialEvent
インターフェースからコピーされた説明:StateMachineAccess
初期トランジションでサブ状態に入った際に実行されるアクションのイベントとそのヘッダーを渡すために使用される初期転送イベントを設定します。- 次で指定:
- インターフェース
StateMachineAccess<S,
のE> setForwardedInitialEvent
- パラメーター:
message
- 転送されたメッセージ
setTransitionConflightPolicy
遷移競合ポリシーを設定します。- パラメーター:
transitionConflictPolicy
- 新しい移行競合ポリシー
toString
resetStateMachine
インターフェースからコピーされた説明:StateMachineAccess
ステートマシンをリセットします。- 次で指定:
- インターフェース
StateMachineAccess<S,
のE> resetStateMachine
- パラメーター:
stateMachineContext
- ステートマシンのコンテキスト- 関連事項:
resetStateMachineReactively
public reactor.core.publisher.Mono<VoidSE> resetStateMachineReactively(StateMachineContext<S, E> stateMachineContext) インターフェースからコピーされた説明:ReactiveStateMachineAccess
ステートマシンをリアクティブにリセットします。- 次で指定:
- インターフェース
ReactiveStateMachineAccess<S,
のE> resetStateMachineReactively
- パラメーター:
stateMachineContext
- ステートマシンのコンテキスト- 戻り値:
- 完成用 mono
addStateMachineInterceptor
インターフェースからコピーされた説明:StateMachineAccess
ステートマシンインターセプターを追加します。- 次で指定:
- インターフェース
StateMachineAccess<S,
のE> addStateMachineInterceptor
- パラメーター:
interceptor
- インターセプター
addStateMachineMonitor
インターフェースからコピーされた説明:StateMachineAccess
ステートマシンモニターを追加します。- 次で指定:
- インターフェース
StateMachineAccess<S,
のE> addStateMachineMonitor
- パラメーター:
monitor
- モニター
getUuid
インターフェースからコピーされた説明:Region
リージョンとステートマシンの一意の ID を取得します。getId
インターフェースからコピーされた説明:Region
リージョンとステートマシン ID を取得します。この識別子はユーザーが自由に使用できるように提供されており、マシンを構築するさまざまな方法から設定できます。setId
マシン ID を設定します。- パラメーター:
id
- 新しいマシン ID
executeTriggerlessTransitions
protected reactor.core.publisher.Mono<VoidSE> executeTriggerlessTransitions(StateMachine<S, E> stateMachine, StateContext<S, E> stateContext, State<S, E> state) getStateMachineExecutor