Microsoft.Protocols.TestSuites.MS_OXCMAPIHTTP.GetPropsResponseBody.Parse C# (CSharp) Method

Parse() public static method

Parse the GetProps request type response body.
public static Parse ( byte rawData ) : GetPropsResponseBody
rawData byte The raw data of response.
return GetPropsResponseBody
        public static GetPropsResponseBody Parse(byte[] rawData)
        {
            GetPropsResponseBody responseBody = new GetPropsResponseBody();
            int index = 0;

            responseBody.StatusCode = BitConverter.ToUInt32(rawData, index);
            index += sizeof(uint);
            responseBody.ErrorCode = BitConverter.ToUInt32(rawData, index);
            index += sizeof(uint);
            responseBody.CodePage = BitConverter.ToUInt32(rawData, index);
            index += sizeof(uint);
            responseBody.HasPropertyValues = BitConverter.ToBoolean(rawData, index);
            index += sizeof(bool);
            if (responseBody.HasPropertyValues)
            {
                responseBody.PropertyValues = AddressBookPropertyValueList.Parse(rawData, ref index);
            }
            else
            {
                responseBody.PropertyValues = null;
            }

            responseBody.AuxiliaryBufferSize = BitConverter.ToUInt32(rawData, index);
            index += 4;
            responseBody.AuxiliaryBuffer = new byte[responseBody.AuxiliaryBufferSize];
            Array.Copy(rawData, index, responseBody.AuxiliaryBuffer, 0, responseBody.AuxiliaryBufferSize);
            return responseBody;
        }
    }

Usage Example

        /// <summary>
        /// This method is used by the client to get specific properties on an object.
        /// </summary>
        /// <param name="getPropsRequestBody">The GetProps request type request body.</param>
        /// <param name="responseCodeHeader">The value of X-ResponseCode header</param>
        /// <returns>The response body of the GetProps request type.</returns>
        public GetPropsResponseBody GetProps(GetPropsRequestBody getPropsRequestBody, out uint responseCodeHeader)
        {
            byte[]              rawBuffer;
            CommonResponse      commonResponse      = null;
            WebHeaderCollection webHeaderCollection = AdapterHelper.InitializeHTTPHeader(RequestType.GetProps, AdapterHelper.ClientInstance, AdapterHelper.Counter);

            // Send the Execute HTTP request and get the response.
            HttpWebResponse response = this.SendMAPIHttpRequest(this.userName, this.password, getPropsRequestBody, ServerEndpoint.AddressBookServerEndpoint, AdapterHelper.SessionContextCookies, webHeaderCollection, out rawBuffer);

            responseCodeHeader = AdapterHelper.GetFinalResponseCode(response.Headers["X-ResponseCode"]);

            // Read the HTTP response buffer and parse the response to correct format.
            commonResponse = CommonResponse.ParseCommonResponse(rawBuffer);

            response.GetResponseStream().Close();
            AdapterHelper.SessionContextCookies = response.Cookies;
            GetPropsResponseBody getPropsResponseBody = new GetPropsResponseBody();

            if (commonResponse.ResponseBodyRawData.Length > 0)
            {
                getPropsResponseBody = GetPropsResponseBody.Parse(commonResponse.ResponseBodyRawData);
            }

            return(getPropsResponseBody);
        }
All Usage Examples Of Microsoft.Protocols.TestSuites.MS_OXCMAPIHTTP.GetPropsResponseBody::Parse
GetPropsResponseBody