public override AmazonWebServiceResponse Unmarshall(UnmarshallerContext input)
        {
            // Unmarshall response
            var response = base.Unmarshall(input);

            // Make sure ResponseMetadata is set
            if (response.ResponseMetadata == null)
                response.ResponseMetadata = new ResponseMetadata();

            // Populate AmazonId2
            response.ResponseMetadata.Metadata.Add(AMZ_ID_2, input.ResponseData.GetHeaderValue(AMZ_ID_2));
            return response;
        }
        public override AmazonWebServiceResponse Unmarshall(UnmarshallerContext input)
        {
            // Unmarshall response
            var response = base.Unmarshall(input);

            // Make sure ResponseMetadata is set
            if (response.ResponseMetadata == null)
                response.ResponseMetadata = new ResponseMetadata();

            // Populate AmazonId2
            response.ResponseMetadata.Metadata.Add(
                HeaderKeys.XAmzId2Header, input.ResponseData.GetHeaderValue(HeaderKeys.XAmzId2Header));

            // Populate X-Amz-Cf-Id for S3 accelerate responses
            if (input.ResponseData.IsHeaderPresent(HeaderKeys.XAmzCloudFrontIdHeader))
                response.ResponseMetadata.Metadata.Add(
                    HeaderKeys.XAmzCloudFrontIdHeader, input.ResponseData.GetHeaderValue(HeaderKeys.XAmzCloudFrontIdHeader));

            return response;
        }