Amazon.Runtime.Internal.Transform.UnityWebResponseData.UnityWebResponseData C# (CSharp) Method

UnityWebResponseData() public method

public UnityWebResponseData ( UnityWebRequestWrapper unityWebRequest ) : Amazon.Util
unityWebRequest UnityWebRequestWrapper
return Amazon.Util
        public UnityWebResponseData(UnityWebRequestWrapper unityWebRequest)
        {
            CopyHeaderValues(unityWebRequest.ResponseHeaders);
            if (!unityWebRequest.IsError)
            {
                _responseBody = unityWebRequest.DownloadHandler.Data;

                if (_responseBody == null)
                {
                    _responseBody = new byte[0];
                }

                _responseStream = new MemoryStream(_responseBody);

                this.ContentLength = _responseBody.LongLength;

                string contentType = null;

                this._headers.TryGetValue(HeaderKeys.ContentTypeHeader, out contentType);

                this.ContentType = contentType;

                if (unityWebRequest.StatusCode.HasValue)
                    this.StatusCode = unityWebRequest.StatusCode.Value;

                this.IsSuccessStatusCode = this.StatusCode >= HttpStatusCode.OK && this.StatusCode <= (HttpStatusCode)299;
            }
            else
            {
                this.IsSuccessStatusCode = false;
                this._responseBody = UTF8Encoding.UTF8.GetBytes(unityWebRequest.Error);
                _responseStream = new MemoryStream(_responseBody);
                
                if (unityWebRequest.DownloadedBytes > 0)
                {
                    this.ContentLength = (long)unityWebRequest.DownloadedBytes;
                }
                else
                {
                    string contentLength = null;
                    if (this._headers.TryGetValue(HeaderKeys.ContentLengthHeader, out contentLength))
                    {
                        long cl;
                        if(long.TryParse(contentLength,out cl))
                            this.ContentLength = cl;
                        else
                            this.ContentLength = 0;
                    }
                    else
                    {
                        this.ContentLength = this._responseBody.Length;
                    }
                }

                if (unityWebRequest.StatusCode.HasValue)
                {
                    this.StatusCode = unityWebRequest.StatusCode.Value;
                }
                else
                {
                    string statusCode = null;
                    if (this._headers.TryGetValue(HeaderKeys.StatusHeader, out statusCode))
                    {
                        this.StatusCode = (HttpStatusCode)Enum.Parse(typeof(HttpStatusCode), statusCode);
                    }
                    else
                    {
                        this.StatusCode = 0;
                    }
                }
            }
        }

Same methods

UnityWebResponseData::UnityWebResponseData ( WWW wwwRequest ) : Amazon.Util