Пример #1
0
        /// <summary>
        /// Set the event handler.
        /// </summary>
        /// <param name="req">The request.</param>
        /// <param name="webResponse">The web response.</param>
        /// <param name="eventHandler">The event handler.</param>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The exception.</param>
        private static void OnResponseReceived(
            WebRequest req,
            WebResponse webResponse,
            EventHandler <ResponseReceivedEventArgs> eventHandler,
            object sender,
            Exception e)
        {
            // Get a Thread safe refence. May be not necessary given that its a function argument.
            EventHandler <ResponseReceivedEventArgs> temp = eventHandler;

            if (temp != null)
            {
                if (webResponse != null)
                {
                    HttpWebResponse response = webResponse as HttpWebResponse;

                    if (response != null)
                    {
                        string requestId = BlobResponse.GetRequestId(response);
                        var    eventArgs = new ResponseReceivedEventArgs()
                        {
                            RequestId         = requestId,
                            RequestHeaders    = req.Headers,
                            RequestUri        = req.RequestUri,
                            ResponseHeaders   = response.Headers,
                            StatusCode        = response.StatusCode,
                            StatusDescription = response.StatusDescription,
                            Exception         = e
                        };

                        temp(sender, eventArgs);
                    }
                }
            }
        }
Пример #2
0
        /// <summary>Set the event handler.</summary>
        /// <param name="req">The request. </param>
        /// <param name="webResponse">The web response. </param>
        /// <param name="eventHandler">The event handler. </param>
        /// <param name="sender">The sender. </param>
        /// <param name="e">The exception. </param>
        private static void OnResponseReceived(
            WebRequest req,
            WebResponse webResponse,
            EventHandler<ResponseReceivedEventArgs> eventHandler,
            object sender,
            Exception e)
        {
            // Get a Thread safe refence. May be not necessary given that its a function argument.
            var temp = eventHandler;

            if (temp == null || webResponse == null)
            {
                return;
            }

            var response = webResponse as HttpWebResponse;
            if (response == null)
            {
                return;
            }

            var requestId = BlobResponse.GetRequestId(response);
            var eventArgs = new ResponseReceivedEventArgs
                {
                    RequestId = requestId,
                    RequestHeaders = req.Headers,
                    RequestUri = req.RequestUri,
                    ResponseHeaders = response.Headers,
                    StatusCode = response.StatusCode,
                    StatusDescription = response.StatusDescription,
                    Exception = e
                };

            temp(sender, eventArgs);
        }
 void client_ResponseReceived(object sender, ResponseReceivedEventArgs e)
 {
 }