/// <summary>
        /// Clean up context.
        /// </summary>
        /// <remarks>
        /// Make sure to call base.Cleanup() if you override the method.
        /// </remarks>
        public virtual void Cleanup()
        {
            if (Stream == null)
            {
                return;
            }
            if (StreamPassedOff)
            {
                return;
            }
            _sock = null;

            Stream.Dispose();
            Stream = null;
            _currentRequest.Clear();
            _bytesLeft = 0;

            FirstRequestLineReceived = false;
            FullRequestReceived      = false;
            FullRequestProcessed     = false;
            MonitorStartMS           = 0;
            StopMonitoring           = false;
            MonitorKeepaliveMS       = 0;
            TriggerKeepalive         = false;

            Cleaned(this, EventArgs.Empty);
            _parser.Clear();
        }
Beispiel #2
0
        /// <summary>
        /// Clean up context.
        /// </summary>
        /// <remarks>
        /// Make sure to call base.Cleanup() if you override the method.
        /// </remarks>
        public virtual void Cleanup()
        {
            if (StreamPassedOff)
            {
                return;
            }

            if (Stream != null)
            {
                Stream.Close();
                Stream = null;
                m_sock = null;
            }

            m_currentRequest?.Clear();
            m_currentRequest = null;
            m_currentResponse?.Clear();
            m_currentResponse = null;
            requestsInServiceIDs.Clear();

            FirstRequestLineReceived = false;
            FullRequestReceived      = false;
            FullRequestProcessed     = false;
            MonitorStartMS           = 0;
            StopMonitoring           = true;
            MonitorKeepaliveMS       = 0;
            TriggerKeepalive         = false;

            isSendingResponse = false;

            m_ReceiveBytesLeft = 0;

            contextID = -100;
            m_parser.Clear();
        }
Beispiel #3
0
        /// <summary>
        /// Clean up context.
        /// </summary>
        /// <remarks>
        /// </remarks>
        public virtual void Cleanup()
        {
            if (StreamPassedOff)
            {
                return;
            }

            contextID = -100;

            if (m_stream != null)
            {
                m_stream.Close();
                m_stream = null;
                m_sock   = null;
            }

            m_currentRequest?.Clear();
            m_currentRequest = null;
            m_currentResponse?.Clear();
            m_currentResponse = null;
            if (m_requests != null)
            {
                while (m_requests.Count > 0)
                {
                    HttpRequest req = m_requests.Dequeue();
                    req.Clear();
                }
                m_requests = null;
            }

            m_parser.Clear();

            FirstRequestLineReceived = false;
            FullRequestReceived      = false;
            LastActivityTimeMS       = 0;
            StopMonitoring           = true;
            MonitorKeepaliveStartMS  = 0;
            TriggerKeepalive         = false;

            isSendingResponse  = false;
            m_ReceiveBytesLeft = 0;
        }
        /// <summary>
        /// Clean up context.
        /// </summary>
        /// <remarks>
        /// Make sure to call base.Cleanup() if you override the method.
        /// </remarks>
        public virtual void Cleanup()
        {
            if (Stream == null)
            {
                return;
            }

            Stream.Dispose();
            Stream = null;
            _currentRequest.Clear();
            _bytesLeft = 0;
            Cleaned(this, EventArgs.Empty);
            _parser.Clear();
        }
Beispiel #5
0
        /// <summary>
        /// Clean up context.
        /// </summary>
        /// <remarks>
        /// Make sure to call base.Cleanup() if you override the method.
        /// </remarks>
        public virtual void Cleanup()
        {
            if (Stream != null)
            {
                Stream.Close();
                _stream = null;
                //m_stackTraceFromNullingOfStream = Environment.StackTrace;
            }

            _currentRequest.Clear();
            _bytesLeft = 0;
            Cleaned(this, EventArgs.Empty);
            _parser.Clear();
        }
Beispiel #6
0
 /// <summary>
 /// Clean up context.
 /// </summary>
 /// <remarks>
 /// Make sure to call base.Cleanup() if you override the method.
 /// </remarks>
 public virtual void Cleanup()
 {
     lock (_syncRoot)
     {
         if (Stream != null)
         {
             Stream.Dispose();
         }
         Stream = null;
         _currentRequest.Clear();
         _bytesLeft = 0;
         Cleaned(this, EventArgs.Empty);
         _parser.Clear();
     }
 }