/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the ec2-2016-11-15.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.EC2.Model { /// /// Container for the parameters to the AssignIpv6Addresses operation. /// Assigns one or more IPv6 addresses to the specified network interface. You can specify /// one or more specific IPv6 addresses, or you can specify the number of IPv6 addresses /// to be automatically assigned from within the subnet's IPv6 CIDR block range. You can /// assign as many IPv6 addresses to a network interface as you can assign private IPv4 /// addresses, and the limit varies per instance type. For information, see IP /// Addresses Per Network Interface Per Instance Type in the Amazon Elastic Compute /// Cloud User Guide. /// /// /// /// You must specify either the IPv6 addresses or the IPv6 address count in the request. /// /// /// /// /// You can optionally use Prefix Delegation on the network interface. You must specify /// either the IPV6 Prefix Delegation prefixes, or the IPv6 Prefix Delegation count. For /// information, see /// Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute /// Cloud User Guide. /// /// public partial class AssignIpv6AddressesRequest : AmazonEC2Request { private int? _ipv6AddressCount; private List _ipv6Addresses = new List(); private int? _ipv6PrefixCount; private List _ipv6Prefixes = new List(); private string _networkInterfaceId; /// /// Gets and sets the property Ipv6AddressCount. /// /// The number of additional IPv6 addresses to assign to the network interface. The specified /// number of IPv6 addresses are assigned in addition to the existing IPv6 addresses that /// are already assigned to the network interface. Amazon EC2 automatically selects the /// IPv6 addresses from the subnet range. You can't use this option if specifying specific /// IPv6 addresses. /// /// public int Ipv6AddressCount { get { return this._ipv6AddressCount.GetValueOrDefault(); } set { this._ipv6AddressCount = value; } } // Check to see if Ipv6AddressCount property is set internal bool IsSetIpv6AddressCount() { return this._ipv6AddressCount.HasValue; } /// /// Gets and sets the property Ipv6Addresses. /// /// The IPv6 addresses to be assigned to the network interface. You can't use this option /// if you're specifying a number of IPv6 addresses. /// /// public List Ipv6Addresses { get { return this._ipv6Addresses; } set { this._ipv6Addresses = value; } } // Check to see if Ipv6Addresses property is set internal bool IsSetIpv6Addresses() { return this._ipv6Addresses != null && this._ipv6Addresses.Count > 0; } /// /// Gets and sets the property Ipv6PrefixCount. /// /// The number of IPv6 prefixes that Amazon Web Services automatically assigns to the /// network interface. You cannot use this option if you use the Ipv6Prefixes /// option. /// /// public int Ipv6PrefixCount { get { return this._ipv6PrefixCount.GetValueOrDefault(); } set { this._ipv6PrefixCount = value; } } // Check to see if Ipv6PrefixCount property is set internal bool IsSetIpv6PrefixCount() { return this._ipv6PrefixCount.HasValue; } /// /// Gets and sets the property Ipv6Prefixes. /// /// One or more IPv6 prefixes assigned to the network interface. You cannot use this option /// if you use the Ipv6PrefixCount option. /// /// public List Ipv6Prefixes { get { return this._ipv6Prefixes; } set { this._ipv6Prefixes = value; } } // Check to see if Ipv6Prefixes property is set internal bool IsSetIpv6Prefixes() { return this._ipv6Prefixes != null && this._ipv6Prefixes.Count > 0; } /// /// Gets and sets the property NetworkInterfaceId. /// /// The ID of the network interface. /// /// [AWSProperty(Required=true)] public string NetworkInterfaceId { get { return this._networkInterfaceId; } set { this._networkInterfaceId = value; } } // Check to see if NetworkInterfaceId property is set internal bool IsSetNetworkInterfaceId() { return this._networkInterfaceId != null; } } }