Пример #1
0
        public override void Terminate()
        {
            lock (_lock)
            {
                SipAbstractDialog removed;

                if (_logger.IsDebugEnabled)
                {
                    _logger.Debug("Trying to remove ServerDialog[Id={0}] from the table...", GetId());
                }

                if (!_dialogTable.TryRemove(GetId(), out removed))
                {
                    _logger.Warn("Could not remove dialog with id: {0}", GetId());
                }
                else
                {
                    if (_logger.IsDebugEnabled)
                    {
                        _logger.Debug("ServerDialog[Id={0}] removed from table.", GetId());
                    }
                }

                _state = DialogState.Terminated;
            }

            _retransmitOkTimer.Dispose();
            //_endWaitForAckTimer.Dispose();
        }
Пример #2
0
        public override void Terminate()
        {
            if (_logger.IsDebugEnabled)
            {
                _logger.Debug("ClientDialog[Id={0}]. Terminating dialog...", GetId());
            }

            lock (_lock)
            {
                SipAbstractDialog removed;
                if (!_dialogTable.TryRemove(GetId(), out removed))
                {
                    if (_logger.IsWarnEnabled)
                    {
                        _logger.Warn("could not remove dialog with id: {0}", GetId());
                    }
                }

                _state = DialogState.Terminated;
            }

            if (_logger.IsDebugEnabled)
            {
                _logger.Debug("ClientDialog[Id={0}]. Terminated.", GetId());
            }
        }