/// <summary> /// Вызывается при остановке сервиса LongPoll. /// </summary> /// <param name="reason">Причина остановки сервиса.</param> private void OnServiceStopped(LongPollStopReason reason) { ServiceStopped(this, new LongPollStoppedEventArgs(reason)); #if DEBUG Debug.WriteLine("LongPoll service stopped. Reason: " + reason.ToString()); #endif CoreHelper.SendInAppPush( "Коснитесь для перезапуска", "Сервис мгновенных сообщений остановлен", PopupMessageType.Error, actionToDo: new Action(() => StartLongPolling(true))); }
/// <summary> /// Останавливает сервис работы с LongPoll-Сервисом ВКонтакте. /// </summary> /// <param name="reason">Причина остановки сервиса.</param> private void Stop(LongPollStopReason reason) { if (!IsWorking) { return; } IsWorking = false; _numberOfRetries = 0; _timer.Stop(); _timer.Tick -= Timer_Tick; if (_cts != null) { _cts.Cancel(true); } _serverData = null; OnServiceStopped(reason); }
/// <summary> /// Инициализирует новый экземпляр класса с заданной причиной остановки сервиса. /// </summary> /// <param name="reason">Причина остановки LongPoll-сервиса.</param> internal LongPollStoppedEventArgs(LongPollStopReason reason) { Reason = reason; }