/// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            GenerateDataKeyWithoutPlaintextResponse response = new GenerateDataKeyWithoutPlaintextResponse();

            context.Read();
            int targetDepth = context.CurrentDepth;

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("CiphertextBlob", targetDepth))
                {
                    var unmarshaller = MemoryStreamUnmarshaller.Instance;
                    response.CiphertextBlob = unmarshaller.Unmarshall(context);
                    continue;
                }
                if (context.TestExpression("KeyId", targetDepth))
                {
                    var unmarshaller = StringUnmarshaller.Instance;
                    response.KeyId = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }
        public static GenerateDataKeyWithoutPlaintextResponse Unmarshall(UnmarshallerContext context)
        {
            GenerateDataKeyWithoutPlaintextResponse generateDataKeyWithoutPlaintextResponse = new GenerateDataKeyWithoutPlaintextResponse();

            generateDataKeyWithoutPlaintextResponse.HttpResponse   = context.HttpResponse;
            generateDataKeyWithoutPlaintextResponse.CiphertextBlob = context.StringValue("GenerateDataKeyWithoutPlaintext.CiphertextBlob");
            generateDataKeyWithoutPlaintextResponse.KeyId          = context.StringValue("GenerateDataKeyWithoutPlaintext.KeyId");
            generateDataKeyWithoutPlaintextResponse.RequestId      = context.StringValue("GenerateDataKeyWithoutPlaintext.RequestId");
            generateDataKeyWithoutPlaintextResponse.KeyVersionId   = context.StringValue("GenerateDataKeyWithoutPlaintext.KeyVersionId");

            return(generateDataKeyWithoutPlaintextResponse);
        }