示例#1
0
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
        {
            DescribeNetworkInterfacesResponse response = new DescribeNetworkInterfacesResponse();

            int originalDepth = context.CurrentDepth;
            int targetDepth   = originalDepth + 1;

            if (context.IsStartOfDocument)
            {
                targetDepth = 2;
            }

            while (context.ReadAtDepth(originalDepth))
            {
                if (context.IsStartElement || context.IsAttribute)
                {
                    if (context.TestExpression("networkInterfaceSet/item", targetDepth))
                    {
                        var unmarshaller = NetworkInterfaceUnmarshaller.Instance;
                        var item         = unmarshaller.Unmarshall(context);
                        response.NetworkInterfaces.Add(item);
                        continue;
                    }
                    if (context.TestExpression("nextToken", targetDepth))
                    {
                        var unmarshaller = StringUnmarshaller.Instance;
                        response.NextToken = unmarshaller.Unmarshall(context);
                        continue;
                    }
                }
            }

            return(response);
        }
        public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems)
        {
            AmazonEC2Config config = new AmazonEC2Config();

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

            DescribeNetworkInterfacesResponse resp = new DescribeNetworkInterfacesResponse();

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

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

                foreach (var obj in resp.NetworkInterfaces)
                {
                    AddObject(obj);
                }
            }while (!string.IsNullOrEmpty(resp.NextToken));
        }
        public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context)
        {
            DescribeNetworkInterfacesResponse response = new DescribeNetworkInterfacesResponse();

            int targetDepth = 2;

            while (context.Read())
            {
                if (context.IsStartElement || context.IsAttribute)
                {
                    if (context.TestExpression("networkInterfaceSet/item", targetDepth))
                    {
                        response.NetworkInterfaces.Add(NetworkInterfaceUnmarshaller.GetInstance().Unmarshall(context));

                        continue;
                    }
                }
            }


            return(response);
        }
        public static DescribeNetworkInterfacesResponse Unmarshall(UnmarshallerContext context)
        {
            DescribeNetworkInterfacesResponse describeNetworkInterfacesResponse = new DescribeNetworkInterfacesResponse();

            describeNetworkInterfacesResponse.HttpResponse = context.HttpResponse;
            describeNetworkInterfacesResponse.RequestId    = context.StringValue("DescribeNetworkInterfaces.RequestId");
            describeNetworkInterfacesResponse.TotalCount   = context.IntegerValue("DescribeNetworkInterfaces.TotalCount");
            describeNetworkInterfacesResponse.PageNumber   = context.IntegerValue("DescribeNetworkInterfaces.PageNumber");
            describeNetworkInterfacesResponse.PageSize     = context.IntegerValue("DescribeNetworkInterfaces.PageSize");
            describeNetworkInterfacesResponse.NextToken    = context.StringValue("DescribeNetworkInterfaces.NextToken");

            List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet> describeNetworkInterfacesResponse_networkInterfaceSets = new List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet>();

            for (int i = 0; i < context.Length("DescribeNetworkInterfaces.NetworkInterfaceSets.Length"); i++)
            {
                DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet networkInterfaceSet = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet();
                networkInterfaceSet.NetworkInterfaceId = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].NetworkInterfaceId");
                networkInterfaceSet.Status             = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Status");
                networkInterfaceSet.Type                 = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Type");
                networkInterfaceSet.VpcId                = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].VpcId");
                networkInterfaceSet.VSwitchId            = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].VSwitchId");
                networkInterfaceSet.ZoneId               = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].ZoneId");
                networkInterfaceSet.PrivateIpAddress     = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpAddress");
                networkInterfaceSet.MacAddress           = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].MacAddress");
                networkInterfaceSet.NetworkInterfaceName = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].NetworkInterfaceName");
                networkInterfaceSet.Description          = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Description");
                networkInterfaceSet.InstanceId           = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].InstanceId");
                networkInterfaceSet.CreationTime         = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].CreationTime");
                networkInterfaceSet.ResourceGroupId      = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].ResourceGroupId");
                networkInterfaceSet.ServiceID            = context.LongValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].ServiceID");
                networkInterfaceSet.ServiceManaged       = context.BooleanValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].ServiceManaged");
                networkInterfaceSet.QueueNumber          = context.IntegerValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].QueueNumber");
                networkInterfaceSet.OwnerId              = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].OwnerId");

                List <string> networkInterfaceSet_securityGroupIds = new List <string>();
                for (int j = 0; j < context.Length("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].SecurityGroupIds.Length"); j++)
                {
                    networkInterfaceSet_securityGroupIds.Add(context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].SecurityGroupIds[" + j + "]"));
                }
                networkInterfaceSet.SecurityGroupIds = networkInterfaceSet_securityGroupIds;

                DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_AssociatedPublicIp associatedPublicIp = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_AssociatedPublicIp();
                associatedPublicIp.PublicIpAddress     = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].AssociatedPublicIp.PublicIpAddress");
                associatedPublicIp.AllocationId        = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].AssociatedPublicIp.AllocationId");
                networkInterfaceSet.AssociatedPublicIp = associatedPublicIp;

                DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Attachment attachment = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Attachment();
                attachment.InstanceId = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Attachment.InstanceId");
                attachment.TrunkNetworkInterfaceId = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Attachment.TrunkNetworkInterfaceId");
                attachment.DeviceIndex             = context.IntegerValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Attachment.DeviceIndex");
                networkInterfaceSet.Attachment     = attachment;

                List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet> networkInterfaceSet_privateIpSets = new List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet>();
                for (int j = 0; j < context.Length("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets.Length"); j++)
                {
                    DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet privateIpSet = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet();
                    privateIpSet.PrivateIpAddress = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets[" + j + "].PrivateIpAddress");
                    privateIpSet.Primary          = context.BooleanValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets[" + j + "].Primary");

                    DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet.DescribeNetworkInterfaces_AssociatedPublicIp1 associatedPublicIp1 = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet.DescribeNetworkInterfaces_AssociatedPublicIp1();
                    associatedPublicIp1.PublicIpAddress = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets[" + j + "].AssociatedPublicIp.PublicIpAddress");
                    associatedPublicIp1.AllocationId    = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets[" + j + "].AssociatedPublicIp.AllocationId");
                    privateIpSet.AssociatedPublicIp1    = associatedPublicIp1;

                    networkInterfaceSet_privateIpSets.Add(privateIpSet);
                }
                networkInterfaceSet.PrivateIpSets = networkInterfaceSet_privateIpSets;

                List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Ipv6Set> networkInterfaceSet_ipv6Sets = new List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Ipv6Set>();
                for (int j = 0; j < context.Length("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Ipv6Sets.Length"); j++)
                {
                    DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Ipv6Set ipv6Set = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Ipv6Set();
                    ipv6Set.Ipv6Address = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Ipv6Sets[" + j + "].Ipv6Address");

                    networkInterfaceSet_ipv6Sets.Add(ipv6Set);
                }
                networkInterfaceSet.Ipv6Sets = networkInterfaceSet_ipv6Sets;

                List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Tag> networkInterfaceSet_tags = new List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Tag>();
                for (int j = 0; j < context.Length("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Tags.Length"); j++)
                {
                    DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Tag tag = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_Tag();
                    tag.TagKey   = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Tags[" + j + "].TagKey");
                    tag.TagValue = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Tags[" + j + "].TagValue");

                    networkInterfaceSet_tags.Add(tag);
                }
                networkInterfaceSet.Tags = networkInterfaceSet_tags;

                describeNetworkInterfacesResponse_networkInterfaceSets.Add(networkInterfaceSet);
            }
            describeNetworkInterfacesResponse.NetworkInterfaceSets = describeNetworkInterfacesResponse_networkInterfaceSets;

            return(describeNetworkInterfacesResponse);
        }
        public static DescribeNetworkInterfacesResponse Unmarshall(UnmarshallerContext context)
        {
            DescribeNetworkInterfacesResponse describeNetworkInterfacesResponse = new DescribeNetworkInterfacesResponse();

            describeNetworkInterfacesResponse.HttpResponse = context.HttpResponse;
            describeNetworkInterfacesResponse.RequestId    = context.StringValue("DescribeNetworkInterfaces.RequestId");
            describeNetworkInterfacesResponse.TotalCount   = context.IntegerValue("DescribeNetworkInterfaces.TotalCount");
            describeNetworkInterfacesResponse.PageNumber   = context.IntegerValue("DescribeNetworkInterfaces.PageNumber");
            describeNetworkInterfacesResponse.PageSize     = context.IntegerValue("DescribeNetworkInterfaces.PageSize");

            List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet> describeNetworkInterfacesResponse_networkInterfaceSets = new List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet>();

            for (int i = 0; i < context.Length("DescribeNetworkInterfaces.NetworkInterfaceSets.Length"); i++)
            {
                DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet networkInterfaceSet = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet();
                networkInterfaceSet.NetworkInterfaceId = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].NetworkInterfaceId");
                networkInterfaceSet.Status             = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Status");
                networkInterfaceSet.Type                 = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Type");
                networkInterfaceSet.VpcId                = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].VpcId");
                networkInterfaceSet.VSwitchId            = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].VSwitchId");
                networkInterfaceSet.ZoneId               = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].ZoneId");
                networkInterfaceSet.PrivateIpAddress     = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpAddress");
                networkInterfaceSet.MacAddress           = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].MacAddress");
                networkInterfaceSet.NetworkInterfaceName = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].NetworkInterfaceName");
                networkInterfaceSet.Description          = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].Description");
                networkInterfaceSet.InstanceId           = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].InstanceId");
                networkInterfaceSet.CreationTime         = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].CreationTime");

                List <string> networkInterfaceSet_securityGroupIds = new List <string>();
                for (int j = 0; j < context.Length("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].SecurityGroupIds.Length"); j++)
                {
                    networkInterfaceSet_securityGroupIds.Add(context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].SecurityGroupIds[" + j + "]"));
                }
                networkInterfaceSet.SecurityGroupIds = networkInterfaceSet_securityGroupIds;

                DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_AssociatedPublicIp associatedPublicIp = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_AssociatedPublicIp();
                associatedPublicIp.PublicIpAddress     = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].AssociatedPublicIp.PublicIpAddress");
                associatedPublicIp.AllocationId        = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].AssociatedPublicIp.AllocationId");
                networkInterfaceSet.AssociatedPublicIp = associatedPublicIp;

                List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet> networkInterfaceSet_privateIpSets = new List <DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet>();
                for (int j = 0; j < context.Length("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets.Length"); j++)
                {
                    DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet privateIpSet = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet();
                    privateIpSet.PrivateIpAddress = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets[" + j + "].PrivateIpAddress");
                    privateIpSet.Primary          = context.BooleanValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets[" + j + "].Primary");

                    DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet.DescribeNetworkInterfaces_AssociatedPublicIp1 associatedPublicIp1 = new DescribeNetworkInterfacesResponse.DescribeNetworkInterfaces_NetworkInterfaceSet.DescribeNetworkInterfaces_PrivateIpSet.DescribeNetworkInterfaces_AssociatedPublicIp1();
                    associatedPublicIp1.PublicIpAddress = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets[" + j + "].AssociatedPublicIp.PublicIpAddress");
                    associatedPublicIp1.AllocationId    = context.StringValue("DescribeNetworkInterfaces.NetworkInterfaceSets[" + i + "].PrivateIpSets[" + j + "].AssociatedPublicIp.AllocationId");
                    privateIpSet.AssociatedPublicIp1    = associatedPublicIp1;

                    networkInterfaceSet_privateIpSets.Add(privateIpSet);
                }
                networkInterfaceSet.PrivateIpSets = networkInterfaceSet_privateIpSets;

                describeNetworkInterfacesResponse_networkInterfaceSets.Add(networkInterfaceSet);
            }
            describeNetworkInterfacesResponse.NetworkInterfaceSets = describeNetworkInterfacesResponse_networkInterfaceSets;

            return(describeNetworkInterfacesResponse);
        }