예제 #1
0
        public BreakerState GetState(State state, IStateManager manager)
        {
            BreakerState breakerState = null;

            switch (state)
            {
            case State.Close:
                breakerState = new CloseState(manager);
                break;

            case State.Open:
                breakerState = new OpenState(manager);
                break;

            case State.HalfOpen:
                breakerState = new HalfOpenState(manager);
                break;

            default:
                throw new NotSupportedException("state");
            }

            return(breakerState);
        }
예제 #2
0
 public void ChangeState(BreakerState newState)
 {
     state = newState;
     aimObject.SetActive(newState == BreakerState.Aim);
 }