//This method will be called every 5 minutes while the application is running. //Stateinfo is required for the timer callback delegate. private void checkForUpdateTimerCallBack(object stateInfo) { //1. Check for applicable updates to the backend.xml this._needsUpdate = UpdateChecker.CompareUserInfo(this._user); //2. check for lockout signal this._lockout = GetInfo.LockoutIsEnabled(); //3. If either return true, trigger the autoEvent. if (this._needsUpdate || this._lockout) { _timer.Dispose(); this._autoEvent.Set(); } }