Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## tle.framework.util.statemachine
Class StateMachine

    java.lang.Object
      tle.framework.util.statemachine.StateMachine

    public class StateMachine

extends java.lang.Object

State Machine을 나타낸다.

Since:
  2.0
Author:
  최범균

Nested Class Summary
`static class` | `StateMachine.FinishState` 종료 상태를 나타내는 클래스
`static class` | `StateMachine.StartState` 시작 상태를 나타내는 클래스.

Constructor Summary
`StateMachine(State startState)` startState는 이미 다른 상태들과의 연결이 완료된 상태이어야 한다.

Method Summary
`State` | `getCurrentState()` 현재 상태를 구한다.
`boolean` | `isFinalState()` 현재 상태가 FinishState의 인스턴스인 경우 true를 리턴한다.
`boolean` | `isStartState()` 현재 상태가 StartState의 인스턴스인 경우 true를 리턴한다.
`void` | `transit(java.lang.String event)` 이벤트를 발생하여 상태를 전이한다.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### StateMachine

    public StateMachine(State startState)

  startState는 이미 다른 상태들과의 연결이 완료된 상태이어야 한다.

  Parameters:
    `startState` - 이 State Machine이 관리하게 될 상태의 첫번째 상태

Method Detail

### isStartState

    public boolean isStartState()

  현재 상태가 StartState의 인스턴스인 경우 true를 리턴한다.

  Returns:
    시작 상태인 경우 true

### isFinalState

    public boolean isFinalState()

  현재 상태가 FinishState의 인스턴스인 경우 true를 리턴한다.

  Returns:
    종료 상태인 경우 true

### getCurrentState

    public State getCurrentState()

  현재 상태를 구한다.

  Returns:
    현재 상태

### transit

    public void transit(java.lang.String event)

  이벤트를 발생하여 상태를 전이한다.

  Parameters:
    `event` - 발생한 이벤트 이름
  Throws:
    `java.lang.IllegalStateException` - 현재 상태에서 이벤트 처리가 불가능할 경우 발생한다.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD