/// <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);
        }
Exemple #3
0
 /// <summary>
 /// Инициализирует новый экземпляр класса с заданной причиной остановки сервиса.
 /// </summary>
 /// <param name="reason">Причина остановки LongPoll-сервиса.</param>
 internal LongPollStoppedEventArgs(LongPollStopReason reason)
 {
     Reason = reason;
 }