/*
* 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
{
///
/// Describes a network interface for a Scheduled Instance.
///
public partial class ScheduledInstancesNetworkInterface
{
private bool? _associatePublicIpAddress;
private bool? _deleteOnTermination;
private string _description;
private int? _deviceIndex;
private List _groups = new List();
private int? _ipv6AddressCount;
private List _ipv6Addresses = new List();
private string _networkInterfaceId;
private string _privateIpAddress;
private List _privateIpAddressConfigs = new List();
private int? _secondaryPrivateIpAddressCount;
private string _subnetId;
///
/// Gets and sets the property AssociatePublicIpAddress.
///
/// Indicates whether to assign a public IPv4 address to instances launched in a VPC.
/// The public IPv4 address can only be assigned to a network interface for eth0, and
/// can only be assigned to a new network interface, not an existing one. You cannot specify
/// more than one network interface in the request. If launching into a default subnet,
/// the default value is true
.
///
///
public bool AssociatePublicIpAddress
{
get { return this._associatePublicIpAddress.GetValueOrDefault(); }
set { this._associatePublicIpAddress = value; }
}
// Check to see if AssociatePublicIpAddress property is set
internal bool IsSetAssociatePublicIpAddress()
{
return this._associatePublicIpAddress.HasValue;
}
///
/// Gets and sets the property DeleteOnTermination.
///
/// Indicates whether to delete the interface when the instance is terminated.
///
///
public bool DeleteOnTermination
{
get { return this._deleteOnTermination.GetValueOrDefault(); }
set { this._deleteOnTermination = value; }
}
// Check to see if DeleteOnTermination property is set
internal bool IsSetDeleteOnTermination()
{
return this._deleteOnTermination.HasValue;
}
///
/// Gets and sets the property Description.
///
/// The description.
///
///
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property DeviceIndex.
///
/// The index of the device for the network interface attachment.
///
///
public int DeviceIndex
{
get { return this._deviceIndex.GetValueOrDefault(); }
set { this._deviceIndex = value; }
}
// Check to see if DeviceIndex property is set
internal bool IsSetDeviceIndex()
{
return this._deviceIndex.HasValue;
}
///
/// Gets and sets the property Groups.
///
/// The IDs of the security groups.
///
///
public List Groups
{
get { return this._groups; }
set { this._groups = value; }
}
// Check to see if Groups property is set
internal bool IsSetGroups()
{
return this._groups != null && this._groups.Count > 0;
}
///
/// Gets and sets the property Ipv6AddressCount.
///
/// The number of IPv6 addresses to assign to the network interface. The IPv6 addresses
/// are automatically selected from the subnet range.
///
///
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 specific IPv6 addresses from the subnet range.
///
///
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 NetworkInterfaceId.
///
/// The ID of the network interface.
///
///
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;
}
///
/// Gets and sets the property PrivateIpAddress.
///
/// The IPv4 address of the network interface within the subnet.
///
///
public string PrivateIpAddress
{
get { return this._privateIpAddress; }
set { this._privateIpAddress = value; }
}
// Check to see if PrivateIpAddress property is set
internal bool IsSetPrivateIpAddress()
{
return this._privateIpAddress != null;
}
///
/// Gets and sets the property PrivateIpAddressConfigs.
///
/// The private IPv4 addresses.
///
///
public List PrivateIpAddressConfigs
{
get { return this._privateIpAddressConfigs; }
set { this._privateIpAddressConfigs = value; }
}
// Check to see if PrivateIpAddressConfigs property is set
internal bool IsSetPrivateIpAddressConfigs()
{
return this._privateIpAddressConfigs != null && this._privateIpAddressConfigs.Count > 0;
}
///
/// Gets and sets the property SecondaryPrivateIpAddressCount.
///
/// The number of secondary private IPv4 addresses.
///
///
public int SecondaryPrivateIpAddressCount
{
get { return this._secondaryPrivateIpAddressCount.GetValueOrDefault(); }
set { this._secondaryPrivateIpAddressCount = value; }
}
// Check to see if SecondaryPrivateIpAddressCount property is set
internal bool IsSetSecondaryPrivateIpAddressCount()
{
return this._secondaryPrivateIpAddressCount.HasValue;
}
///
/// Gets and sets the property SubnetId.
///
/// The ID of the subnet.
///
///
public string SubnetId
{
get { return this._subnetId; }
set { this._subnetId = value; }
}
// Check to see if SubnetId property is set
internal bool IsSetSubnetId()
{
return this._subnetId != null;
}
}
}