クラス AbstractState<S,E>

java.lang.ObjectSE
org.springframework.statemachine.support.LifecycleObjectSupport
org.springframework.statemachine.state.AbstractState<S,E>
型パラメーター:
S - 状態の型
E - イベントの型
実装されたすべてのインターフェース:
org.springframework.beans.factory.Awareorg.springframework.beans.factory.BeanFactoryAwareorg.springframework.beans.factory.DisposableBeanorg.springframework.beans.factory.InitializingBeanorg.springframework.context.Lifecycleorg.springframework.context.Phasedorg.springframework.context.SmartLifecycleState<S,E>StateMachineReactiveLifecycle
既知の直属サブクラス
AbstractSimpleStateRegionStateStateMachineState

public abstract class AbstractState<S,E> extends LifecycleObjectSupport implements State<S,E>
State の基本実装。
作成者:
Janne Valkealahti
  • コンストラクターの詳細

  • メソッドの詳細

    • sendEvent

      public reactor.core.publisher.Flux<StateMachineEventResult<S,E>> sendEvent(org.springframework.messaging.Message<E> event)
      インターフェースからコピーされた説明: State
      Message でラップされたイベント E を状態に送信し、結果の StateMachineEventResult を返します。
      次で指定:
      インターフェース State<S,E>sendEvent 
      パラメーター:
      event - 送信するラップされたイベント
      戻り値:
      ステートマシンイベントの結果
    • shouldDefer

      public boolean shouldDefer(org.springframework.messaging.Message<E> event)
      インターフェースからコピーされた説明: State
      状態がイベントを延期するかどうかを確認します。
      次で指定:
      インターフェース State<S,E>shouldDefer 
      パラメーター:
      event - ラップされたイベント
      戻り値:
      イベントを延期する必要がある場合は true
    • exit

      public reactor.core.publisher.Mono<VoidSE> exit(StateContext<S,E> context)
      インターフェースからコピーされた説明: State
      状態の終了シーケンスを開始します。
      次で指定:
      インターフェース State<S,E>exit 
      パラメーター:
      context - 状態コンテキスト
      戻り値:
      完成用 Mono
    • entry

      public reactor.core.publisher.Mono<VoidSE> entry(StateContext<S,E> context)
      インターフェースからコピーされた説明: State
      状態のエントリシーケンスを開始します。
      次で指定:
      インターフェース State<S,E>entry 
      パラメーター:
      context - 状態コンテキスト
      戻り値:
      完成用 Mono
    • getId

      public S getId()
      インターフェースからコピーされた説明: State
      状態識別子を取得します。
      次で指定:
      インターフェース State<S,E>getId 
      戻り値:
      状態識別子
    • getIds

      public abstract CollectionSE<S> getIds()
      インターフェースからコピーされた説明: State
      状態識別子を取得します。通常、返されるコレクションには、状態が直交する場合を除き、識別子が 1 つだけ含まれます。
      次で指定:
      インターフェース State<S,E>getIds 
      戻り値:
      状態識別子
    • getStates

      public abstract CollectionSE<State<S,E>> getStates()
      インターフェースからコピーされた説明: State
      この状態がそれ自体とサブ状態を含めて認識しているすべての可能な状態を取得します。
      次で指定:
      インターフェース State<S,E>getStates 
      戻り値:
      それ自体とネストされた状態を含むすべての状態
    • getPseudoState

      public PseudoState<S,E> getPseudoState()
      インターフェースからコピーされた説明: State
      State に接続された PseudoState を取得します。PseudoState は必須ではないため、設定されていない場合、このメソッドは NULL を返します。
      次で指定:
      インターフェース State<S,E>getPseudoState 
      戻り値:
      疑似状態または状態にない場合は null
    • getDeferredEvents

      public CollectionSE<E> getDeferredEvents()
      インターフェースからコピーされた説明: State
      この状態の遅延イベントを取得します。
      次で指定:
      インターフェース State<S,E>getDeferredEvents 
      戻り値:
      状態の延期イベント
    • getEntryActions

      public CollectionSE<FunctionSE<StateContext<S,E>,reactor.core.publisher.Mono<VoidSE>>> getEntryActions()
      インターフェースからコピーされた説明: State
      この状態に入って実行された Action を取得します。
      次で指定:
      インターフェース State<S,E>getEntryActions 
      戻り値:
      状態エントリアクション
    • getStateActions

      public CollectionSE<FunctionSE<StateContext<S,E>,reactor.core.publisher.Mono<VoidSE>>> getStateActions()
      インターフェースからコピーされた説明: State
      この状態で一度実行される Action を取得します。
      次で指定:
      インターフェース State<S,E>getStateActions 
      戻り値:
      状態のアクション
    • getExitActions

      public CollectionSE<FunctionSE<StateContext<S,E>,reactor.core.publisher.Mono<VoidSE>>> getExitActions()
      インターフェースからコピーされた説明: State
      この状態から抜け出すために実行された Action を取得します。
      次で指定:
      インターフェース State<S,E>getExitActions 
      戻り値:
      状態終了アクション
    • isComposite

      public boolean isComposite()
      インターフェースからコピーされた説明: State
      状態が複合状態かどうかを確認します。複合状態は、少なくとも 1 つのリージョンを含む状態です。
      次で指定:
      インターフェース State<S,E>isComposite 
      戻り値:
      true、状態が複合状態の場合
    • isOrthogonal

      public boolean isOrthogonal()
      インターフェースからコピーされた説明: State
      状態が直交状態かどうかを確認します。直交複合状態には、2 つ以上の領域が含まれます。このメソッドが TRUE を返す場合、State.isComposite() も常に TRUE を返します。
      次で指定:
      インターフェース State<S,E>isOrthogonal 
      戻り値:
      true、状態が直交状態の場合
    • isSimple

      public boolean isSimple()
      インターフェースからコピーされた説明: State
      状態が単純な状態かどうかを確認します。単純な状態には領域がなく、サブマシン状態マシンを参照しません。
      次で指定:
      インターフェース State<S,E>isSimple 
      戻り値:
      true、状態が単純な状態の場合
    • isSubmachineState

      public boolean isSubmachineState()
      インターフェースからコピーされた説明: State
      状態がサブマシン状態かどうかを確認します。この種の状態は、ステートマシン (サブマシン) を参照します。
      次で指定:
      インターフェース State<S,E>isSubmachineState 
      戻り値:
      true、状態がサブマシン状態の場合
    • addStateListener

      public void addStateListener(StateListener<S,E> listener)
      インターフェースからコピーされた説明: State
      状態リスナーを追加します。
      次で指定:
      インターフェース State<S,E>addStateListener 
      パラメーター:
      listener - リスナー
    • removeStateListener

      public void removeStateListener(StateListener<S,E> listener)
      インターフェースからコピーされた説明: State
      状態リスナーを削除します。
      次で指定:
      インターフェース State<S,E>removeStateListener 
      パラメーター:
      listener - リスナー
    • addActionListener

      public void addActionListener(ActionListener<S,E> listener)
      インターフェースからコピーされた説明: State
      アクションリスナーを追加します。
      次で指定:
      インターフェース State<S,E>addActionListener 
      パラメーター:
      listener - リスナー
    • removeActionListener

      public void removeActionListener(ActionListener<S,E> listener)
      インターフェースからコピーされた説明: State
      アクションリスナーを削除します。
      次で指定:
      インターフェース State<S,E>removeActionListener 
      パラメーター:
      listener - リスナー
    • doPreStartReactively

      protected reactor.core.publisher.Mono<VoidSE> doPreStartReactively()
      クラスからコピーされた説明: LifecycleObjectSupport
      サブクラスは、開始前のロジック用にこれを実装できます。
      オーバーライド:
      クラス LifecycleObjectSupportdoPreStartReactively 
      戻り値:
      mono で完成
    • doPreStopReactively

      protected reactor.core.publisher.Mono<VoidSE> doPreStopReactively()
      クラスからコピーされた説明: LifecycleObjectSupport
      サブクラスは、停止前ロジックのためにこれを実装できます。
      オーバーライド:
      クラス LifecycleObjectSupportdoPreStopReactively 
      戻り値:
      mono で完成
    • getSubmachine

      public StateMachine<S,E> getSubmachine()
      サブマシンを取得します。
      戻り値:
      サブマシンまたは設定されていない場合は null
    • getRegions

      public CollectionSE<Region<S,E>> getRegions()
      領域を取得します。
      戻り値:
      リージョン、またはリージョンがない場合は空のコレクション
    • setTriggers

      public void setTriggers(ListSE<Trigger<S,E>> triggers)
      トリガーを設定します。
      パラメーター:
      triggers - トリガー
    • getTriggers

      public ListSE<Trigger<S,E>> getTriggers()
      トリガーを取得します。
      戻り値:
      トリガー
    • setStateDoActionPolicy

      public void setStateDoActionPolicy(StateDoActionPolicy stateDoActionPolicy)
    • setStateDoActionPolicyTimeout

      public void setStateDoActionPolicyTimeout(LongSE stateDoActionPolicyTimeout)
    • armTriggers

      protected void armTriggers()
      アームトリガー。
    • disarmTriggers

      protected void disarmTriggers()
      トリガーを武装解除します。
    • executeAction

      protected reactor.core.publisher.Mono<VoidSE> executeAction(FunctionSE<StateContext<S,E>,reactor.core.publisher.Mono<VoidSE>> action, StateContext<S,E> context)
      アクションを実行し、設定されている場合はアクションリスナーに通知します。
      パラメーター:
      action - アクション
      context - コンテキスト
      戻り値:
      完成用 mono
    • handleStateDoOnComplete

      protected reactor.core.publisher.Mono<VoidSE> handleStateDoOnComplete(StateContext<S,E> context)
    • notifyStateOnComplete

      protected void notifyStateOnComplete(StateContext<S,E> context)
    • toString

      public StringSE toString()
      オーバーライド:
      クラス ObjectSEtoString