public static Parse ( byte rawData ) : UpdateStatResponseBody | ||
rawData | byte | The raw data of response. |
Результат | UpdateStatResponseBody |
public static UpdateStatResponseBody Parse(byte[] rawData)
{
UpdateStatResponseBody responseBody = new UpdateStatResponseBody();
int index = 0;
responseBody.StatusCode = BitConverter.ToUInt32(rawData, index);
index += sizeof(uint);
responseBody.ErrorCode = BitConverter.ToUInt32(rawData, index);
index += sizeof(uint);
responseBody.HasState = BitConverter.ToBoolean(rawData, index);
index += sizeof(bool);
if (responseBody.HasState)
{
responseBody.State = STAT.Parse(rawData, ref index);
}
else
{
responseBody.State = null;
}
responseBody.HasDelta = BitConverter.ToBoolean(rawData, index);
index += sizeof(bool);
if (responseBody.HasDelta)
{
responseBody.Delta = BitConverter.ToInt32(rawData, index);
index += sizeof(int);
}
else
{
responseBody.Delta = 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;
}
}
/// <summary> /// This method is used by the client to update the STAT structure to reflect the client's changes. /// </summary> /// <param name="updateStatRequestBody">The UpdateStat request type request body.</param> /// <returns>The response body of UpdateStat request type.</returns> public UpdateStatResponseBody UpdateStat(UpdateStatRequestBody updateStatRequestBody) { CommonResponse commonResponse = this.SendAddressBookRequest(updateStatRequestBody, RequestType.UpdateStat); UpdateStatResponseBody updateStatResponseBody = UpdateStatResponseBody.Parse(commonResponse.ResponseBodyRawData); this.VerifyUpdateStatResponseBody(updateStatResponseBody); return(updateStatResponseBody); }