private FtpStatusCode m_StatusCode = 0;                 // ftp status code

        // Methods
        internal FtpListenerResponse(FtpListenerRequest request, IDataManager sender)
        {
            if (request.Method == WebRequestMethods.Ftp.DownloadFile || request.Method == WebRequestMethods.Ftp.ListDirectory || request.Method == WebRequestMethods.Ftp.ListDirectoryDetails)
            {
                m_NeedStream = true;
                m_NeedInputStream = true;
            }
            if (request.Method == WebRequestMethods.Ftp.GetFileSize)
            {
                m_NeedInputStream = true;
            }
            m_ResponseManager = sender;
            m_Request = request;
        }
        private FtpStatusCode m_StatusCode      = 0;            // ftp status code

        // Methods
        internal FtpListenerResponse(FtpListenerRequest request, IDataManager sender)
        {
            if (request.Method == WebRequestMethods.Ftp.DownloadFile || request.Method == WebRequestMethods.Ftp.ListDirectory || request.Method == WebRequestMethods.Ftp.ListDirectoryDetails)
            {
                m_NeedStream      = true;
                m_NeedInputStream = true;
            }
            if (request.Method == WebRequestMethods.Ftp.GetFileSize)
            {
                m_NeedInputStream = true;
            }
            m_ResponseManager = sender;
            m_Request         = request;
        }
        private FtpListenerSession m_Session = null;                    // reference back to the session it belongs to

        // Methods
        internal FtpListenerContext(FtpListenerSession session, FtpListenerRequest request)
        {
            m_ResponseToClient = new FtpListenerResponse(request, session);
            m_ClientRequest = request;
            m_Session = session;
        }
        private FtpListenerSession m_Session = null;                    // reference back to the session it belongs to

        // Methods
        internal FtpListenerContext(FtpListenerSession session, FtpListenerRequest request)
        {
            m_ResponseToClient = new FtpListenerResponse(request, session);
            m_ClientRequest    = request;
            m_Session          = session;
        }