Ejemplo n.º 1
0
        public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems)
        {
            AmazonSimpleSystemsManagementConfig config = new AmazonSimpleSystemsManagementConfig();

            config.RegionEndpoint = region;
            ConfigureClient(config);
            AmazonSimpleSystemsManagementClient client = new AmazonSimpleSystemsManagementClient(creds, config);

            DescribeActivationsResponse resp = new DescribeActivationsResponse();

            do
            {
                DescribeActivationsRequest req = new DescribeActivationsRequest
                {
                    NextToken = resp.NextToken
                    ,
                    MaxResults = maxItems
                };

                resp = client.DescribeActivations(req);
                CheckError(resp.HttpStatusCode, "200");

                foreach (var obj in resp.ActivationList)
                {
                    AddObject(obj);
                }
            }while (!string.IsNullOrEmpty(resp.NextToken));
        }
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            DescribeActivationsResponse response = new DescribeActivationsResponse();

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

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("ActivationList", targetDepth))
                {
                    var unmarshaller = new ListUnmarshaller <Activation, ActivationUnmarshaller>(ActivationUnmarshaller.Instance);
                    response.ActivationList = unmarshaller.Unmarshall(context);
                    continue;
                }
                if (context.TestExpression("NextToken", targetDepth))
                {
                    var unmarshaller = StringUnmarshaller.Instance;
                    response.NextToken = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }
        public static DescribeActivationsResponse Unmarshall(UnmarshallerContext _ctx)
        {
            DescribeActivationsResponse describeActivationsResponse = new DescribeActivationsResponse();

            describeActivationsResponse.HttpResponse = _ctx.HttpResponse;
            describeActivationsResponse.RequestId    = _ctx.StringValue("DescribeActivations.RequestId");
            describeActivationsResponse.TotalCount   = _ctx.LongValue("DescribeActivations.TotalCount");
            describeActivationsResponse.PageNumber   = _ctx.LongValue("DescribeActivations.PageNumber");
            describeActivationsResponse.PageSize     = _ctx.LongValue("DescribeActivations.PageSize");

            List <DescribeActivationsResponse.DescribeActivations_Activation> describeActivationsResponse_activationList = new List <DescribeActivationsResponse.DescribeActivations_Activation>();

            for (int i = 0; i < _ctx.Length("DescribeActivations.ActivationList.Length"); i++)
            {
                DescribeActivationsResponse.DescribeActivations_Activation activation = new DescribeActivationsResponse.DescribeActivations_Activation();
                activation.ActivationId      = _ctx.StringValue("DescribeActivations.ActivationList[" + i + "].ActivationId");
                activation.InstanceName      = _ctx.StringValue("DescribeActivations.ActivationList[" + i + "].InstanceName");
                activation.Description       = _ctx.StringValue("DescribeActivations.ActivationList[" + i + "].Description");
                activation.InstanceCount     = _ctx.IntegerValue("DescribeActivations.ActivationList[" + i + "].InstanceCount");
                activation.TimeToLiveInHours = _ctx.LongValue("DescribeActivations.ActivationList[" + i + "].TimeToLiveInHours");
                activation.IpAddressRange    = _ctx.StringValue("DescribeActivations.ActivationList[" + i + "].IpAddressRange");
                activation.RegisteredCount   = _ctx.IntegerValue("DescribeActivations.ActivationList[" + i + "].RegisteredCount");
                activation.DeregisteredCount = _ctx.IntegerValue("DescribeActivations.ActivationList[" + i + "].DeregisteredCount");
                activation.Disabled          = _ctx.BooleanValue("DescribeActivations.ActivationList[" + i + "].Disabled");
                activation.CreationTime      = _ctx.StringValue("DescribeActivations.ActivationList[" + i + "].CreationTime");

                describeActivationsResponse_activationList.Add(activation);
            }
            describeActivationsResponse.ActivationList = describeActivationsResponse_activationList;

            return(describeActivationsResponse);
        }