Package com.tnsai.fsm

Class State.Builder

java.lang.Object
com.tnsai.fsm.State.Builder
Enclosing class:
State

public static class State.Builder extends Object
Builder for State.
  • Method Details

    • initial

      public State.Builder initial()
      Marks this as an initial state.
      Returns:
      this builder
    • terminal

      public State.Builder terminal()
      Marks this as a terminal (final) state.
      Returns:
      this builder
    • onEntry

      public State.Builder onEntry(StateAction action)
      Sets the entry action.
      Parameters:
      action - action to execute on entry
      Returns:
      this builder
    • onExit

      public State.Builder onExit(StateAction action)
      Sets the exit action.
      Parameters:
      action - action to execute on exit
      Returns:
      this builder
    • timeout

      public State.Builder timeout(long timeoutMs)
      Sets the state timeout in milliseconds.
      Parameters:
      timeoutMs - timeout in milliseconds
      Returns:
      this builder
    • metadata

      public State.Builder metadata(String key, Object value)
      Adds metadata.
      Parameters:
      key - the key
      value - the value
      Returns:
      this builder
    • build

      public State build()
      Builds the state.
      Returns:
      new state