@Override
    public STATE doTransition(OPERAND operand, STATE oldState,
                              EVENT event, EVENTTYPE eventType)
        throws InvalidStateTransitionException {
      STATE postState = hook.transition(operand, event);

      if (!validPostStates.contains(postState)) {
        throw new InvalidStateTransitionException(oldState, eventType);
      }
      return postState;
    }
Effect a transition due to the effecting stimulus.
@param oldState current state
@param eventType trigger to initiate the transition
@param event causal eventType context
@return transitioned state
ambari-server/src/main/java/org/apache/ambari/server/state/fsm/StateMachineFactory.java