/// <summary> /// Starts the abort timer, in case the state transition you are about to do hangs /// </summary> /// <param name="threadToKill">thread that is going to be doing the work</param> /// <param name="targetState">graph's target state</param> private void StartAbortTimer(Thread threadToKill, ServerGraphState targetState) { _abortThread = threadToKill; _abortState = targetState; if (_abortTimer == null) { _abortTimer = new System.Timers.Timer(30000); _abortTimer.Enabled = false; _abortTimer.Elapsed += new System.Timers.ElapsedEventHandler(AbortTimer_Elapsed); } _abortTimer.Enabled = true; }
private ServerStatusState GraphStateToStatus(ServerGraphState state, int numClients) { if ((state == ServerGraphState.Running) && (numClients > 0)) { return(ServerStatusState.Streaming); } else if ((state == ServerGraphState.Rebuild) || (state == ServerGraphState.Aborted)) { return(ServerStatusState.Recovering); } else { return(ServerStatusState.Idle); } }