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

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

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("distribution", targetDepth))
                {
                    var unmarshaller = LightsailDistributionUnmarshaller.Instance;
                    response.Distribution = unmarshaller.Unmarshall(context);
                    continue;
                }
                if (context.TestExpression("operation", targetDepth))
                {
                    var unmarshaller = OperationUnmarshaller.Instance;
                    response.Operation = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }
예제 #2
0
        public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
        {
            CreateDistributionResponse response = new CreateDistributionResponse();

            UnmarshallResult(context, response);


            return(response);
        }
        public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
        {
            CreateDistributionResponse response = new CreateDistributionResponse();

            response.CreateDistributionResult = CreateDistributionResultUnmarshaller.GetInstance().Unmarshall(context);


            return(response);
        }
        public string CreateDistribution(string bucketName, bool enabled)
        {
            CloudFrontDistributionConfig config = new CloudFrontDistributionConfig();

            config.WithOrigin(bucketName)
            .WithEnabled(enabled);
            CreateDistributionRequest request = new CreateDistributionRequest();

            request.WithDistributionConfig(config);
            CreateDistributionResponse response = _client.CreateDistribution(request);

            return(response.Distribution.DomainName);
        }
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
        {
            CreateDistributionResponse response = new CreateDistributionResponse();

            UnmarshallResult(context, response);
            if (context.ResponseData.IsHeaderPresent("ETag"))
            {
                response.ETag = context.ResponseData.GetHeaderValue("ETag");
            }
            if (context.ResponseData.IsHeaderPresent("Location"))
            {
                response.Location = context.ResponseData.GetHeaderValue("Location");
            }

            return(response);
        }
예제 #6
0
        private static void UnmarshallResult(XmlUnmarshallerContext context, CreateDistributionResponse response)
        {
            int originalDepth = context.CurrentDepth;
            int targetDepth   = originalDepth + 1;

            while (context.Read())
            {
                if (context.IsStartElement || context.IsAttribute)
                {
                    if (context.TestExpression("Distribution", targetDepth))
                    {
                        response.Distribution = DistributionUnmarshaller.GetInstance().Unmarshall(context);

                        continue;
                    }
                }
                else if (context.IsEndElement && context.CurrentDepth < originalDepth)
                {
                    return;
                }
            }


            IWebResponseData responseData = context.ResponseData;

            if (responseData.IsHeaderPresent("Location"))
            {
                response.Location = responseData.GetHeaderValue("Location");
            }
            if (responseData.IsHeaderPresent("ETag"))
            {
                response.ETag = responseData.GetHeaderValue("ETag");
            }


            return;
        }
        private static void UnmarshallResult(XmlUnmarshallerContext context, CreateDistributionResponse response)
        {
            int originalDepth = context.CurrentDepth;
            int targetDepth   = originalDepth + 1;

            while (context.Read())
            {
                if (context.IsStartElement || context.IsAttribute)
                {
                    if (context.TestExpression("Distribution", targetDepth))
                    {
                        var unmarshaller = DistributionUnmarshaller.Instance;
                        response.Distribution = unmarshaller.Unmarshall(context);
                        continue;
                    }
                }
                else if (context.IsEndElement && context.CurrentDepth < originalDepth)
                {
                    return;
                }
            }

            return;
        }