/*
* 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 opsworks-2013-02-18.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.OpsWorks.Model
{
///
/// Describes an instance.
///
public partial class Instance
{
private string _agentVersion;
private string _amiId;
private Architecture _architecture;
private string _arn;
private AutoScalingType _autoScalingType;
private string _availabilityZone;
private List _blockDeviceMappings = new List();
private string _createdAt;
private bool? _ebsOptimized;
private string _ec2InstanceId;
private string _ecsClusterArn;
private string _ecsContainerInstanceArn;
private string _elasticIp;
private string _hostname;
private string _infrastructureClass;
private bool? _installUpdatesOnBoot;
private string _instanceId;
private string _instanceProfileArn;
private string _instanceType;
private string _lastServiceErrorId;
private List _layerIds = new List();
private string _os;
private string _platform;
private string _privateDns;
private string _privateIp;
private string _publicDns;
private string _publicIp;
private string _registeredBy;
private string _reportedAgentVersion;
private ReportedOs _reportedOs;
private RootDeviceType _rootDeviceType;
private string _rootDeviceVolumeId;
private List _securityGroupIds = new List();
private string _sshHostDsaKeyFingerprint;
private string _sshHostRsaKeyFingerprint;
private string _sshKeyName;
private string _stackId;
private string _status;
private string _subnetId;
private string _tenancy;
private VirtualizationType _virtualizationType;
///
/// Gets and sets the property AgentVersion.
///
/// The agent version. This parameter is set to INHERIT
if the instance inherits
/// the default stack setting or to a a version number for a fixed agent version.
///
///
public string AgentVersion
{
get { return this._agentVersion; }
set { this._agentVersion = value; }
}
// Check to see if AgentVersion property is set
internal bool IsSetAgentVersion()
{
return this._agentVersion != null;
}
///
/// Gets and sets the property AmiId.
///
/// A custom AMI ID to be used to create the instance. For more information, see Instances
///
///
///
public string AmiId
{
get { return this._amiId; }
set { this._amiId = value; }
}
// Check to see if AmiId property is set
internal bool IsSetAmiId()
{
return this._amiId != null;
}
///
/// Gets and sets the property Architecture.
///
/// The instance architecture: "i386" or "x86_64".
///
///
public Architecture Architecture
{
get { return this._architecture; }
set { this._architecture = value; }
}
// Check to see if Architecture property is set
internal bool IsSetArchitecture()
{
return this._architecture != null;
}
///
/// Gets and sets the property Arn.
///
/// The instance's Amazon Resource Number (ARN).
///
///
public string Arn
{
get { return this._arn; }
set { this._arn = value; }
}
// Check to see if Arn property is set
internal bool IsSetArn()
{
return this._arn != null;
}
///
/// Gets and sets the property AutoScalingType.
///
/// For load-based or time-based instances, the type.
///
///
public AutoScalingType AutoScalingType
{
get { return this._autoScalingType; }
set { this._autoScalingType = value; }
}
// Check to see if AutoScalingType property is set
internal bool IsSetAutoScalingType()
{
return this._autoScalingType != null;
}
///
/// Gets and sets the property AvailabilityZone.
///
/// The instance Availability Zone. For more information, see Regions
/// and Endpoints.
///
///
public string AvailabilityZone
{
get { return this._availabilityZone; }
set { this._availabilityZone = value; }
}
// Check to see if AvailabilityZone property is set
internal bool IsSetAvailabilityZone()
{
return this._availabilityZone != null;
}
///
/// Gets and sets the property BlockDeviceMappings.
///
/// An array of BlockDeviceMapping
objects that specify the instance's block
/// device mappings.
///
///
public List BlockDeviceMappings
{
get { return this._blockDeviceMappings; }
set { this._blockDeviceMappings = value; }
}
// Check to see if BlockDeviceMappings property is set
internal bool IsSetBlockDeviceMappings()
{
return this._blockDeviceMappings != null && this._blockDeviceMappings.Count > 0;
}
///
/// Gets and sets the property CreatedAt.
///
/// The time that the instance was created.
///
///
public string CreatedAt
{
get { return this._createdAt; }
set { this._createdAt = value; }
}
// Check to see if CreatedAt property is set
internal bool IsSetCreatedAt()
{
return this._createdAt != null;
}
///
/// Gets and sets the property EbsOptimized.
///
/// Whether this is an Amazon EBS-optimized instance.
///
///
public bool EbsOptimized
{
get { return this._ebsOptimized.GetValueOrDefault(); }
set { this._ebsOptimized = value; }
}
// Check to see if EbsOptimized property is set
internal bool IsSetEbsOptimized()
{
return this._ebsOptimized.HasValue;
}
///
/// Gets and sets the property Ec2InstanceId.
///
/// The ID of the associated Amazon EC2 instance.
///
///
public string Ec2InstanceId
{
get { return this._ec2InstanceId; }
set { this._ec2InstanceId = value; }
}
// Check to see if Ec2InstanceId property is set
internal bool IsSetEc2InstanceId()
{
return this._ec2InstanceId != null;
}
///
/// Gets and sets the property EcsClusterArn.
///
/// For container instances, the Amazon ECS cluster's ARN.
///
///
public string EcsClusterArn
{
get { return this._ecsClusterArn; }
set { this._ecsClusterArn = value; }
}
// Check to see if EcsClusterArn property is set
internal bool IsSetEcsClusterArn()
{
return this._ecsClusterArn != null;
}
///
/// Gets and sets the property EcsContainerInstanceArn.
///
/// For container instances, the instance's ARN.
///
///
public string EcsContainerInstanceArn
{
get { return this._ecsContainerInstanceArn; }
set { this._ecsContainerInstanceArn = value; }
}
// Check to see if EcsContainerInstanceArn property is set
internal bool IsSetEcsContainerInstanceArn()
{
return this._ecsContainerInstanceArn != null;
}
///
/// Gets and sets the property ElasticIp.
///
/// The instance Elastic
/// IP address .
///
///
public string ElasticIp
{
get { return this._elasticIp; }
set { this._elasticIp = value; }
}
// Check to see if ElasticIp property is set
internal bool IsSetElasticIp()
{
return this._elasticIp != null;
}
///
/// Gets and sets the property Hostname.
///
/// The instance host name.
///
///
public string Hostname
{
get { return this._hostname; }
set { this._hostname = value; }
}
// Check to see if Hostname property is set
internal bool IsSetHostname()
{
return this._hostname != null;
}
///
/// Gets and sets the property InfrastructureClass.
///
/// For registered instances, the infrastructure class: ec2
or on-premises
.
///
///
public string InfrastructureClass
{
get { return this._infrastructureClass; }
set { this._infrastructureClass = value; }
}
// Check to see if InfrastructureClass property is set
internal bool IsSetInfrastructureClass()
{
return this._infrastructureClass != null;
}
///
/// Gets and sets the property InstallUpdatesOnBoot.
///
/// Whether to install operating system and package updates when the instance boots. The
/// default value is true
. If this value is set to false
, you
/// must then update your instances manually by using CreateDeployment to run the
/// update_dependencies
stack command or by manually running yum
/// (Amazon Linux) or apt-get
(Ubuntu) on the instances.
///
///
///
/// We strongly recommend using the default value of true
, to ensure that
/// your instances have the latest security updates.
///
///
///
public bool InstallUpdatesOnBoot
{
get { return this._installUpdatesOnBoot.GetValueOrDefault(); }
set { this._installUpdatesOnBoot = value; }
}
// Check to see if InstallUpdatesOnBoot property is set
internal bool IsSetInstallUpdatesOnBoot()
{
return this._installUpdatesOnBoot.HasValue;
}
///
/// Gets and sets the property InstanceId.
///
/// The instance ID.
///
///
public string InstanceId
{
get { return this._instanceId; }
set { this._instanceId = value; }
}
// Check to see if InstanceId property is set
internal bool IsSetInstanceId()
{
return this._instanceId != null;
}
///
/// Gets and sets the property InstanceProfileArn.
///
/// The ARN of the instance's IAM profile. For more information about IAM ARNs, see Using
/// Identifiers.
///
///
public string InstanceProfileArn
{
get { return this._instanceProfileArn; }
set { this._instanceProfileArn = value; }
}
// Check to see if InstanceProfileArn property is set
internal bool IsSetInstanceProfileArn()
{
return this._instanceProfileArn != null;
}
///
/// Gets and sets the property InstanceType.
///
/// The instance type, such as t2.micro
.
///
///
public string InstanceType
{
get { return this._instanceType; }
set { this._instanceType = value; }
}
// Check to see if InstanceType property is set
internal bool IsSetInstanceType()
{
return this._instanceType != null;
}
///
/// Gets and sets the property LastServiceErrorId.
///
/// The ID of the last service error. For more information, call DescribeServiceErrors.
///
///
public string LastServiceErrorId
{
get { return this._lastServiceErrorId; }
set { this._lastServiceErrorId = value; }
}
// Check to see if LastServiceErrorId property is set
internal bool IsSetLastServiceErrorId()
{
return this._lastServiceErrorId != null;
}
///
/// Gets and sets the property LayerIds.
///
/// An array containing the instance layer IDs.
///
///
public List LayerIds
{
get { return this._layerIds; }
set { this._layerIds = value; }
}
// Check to see if LayerIds property is set
internal bool IsSetLayerIds()
{
return this._layerIds != null && this._layerIds.Count > 0;
}
///
/// Gets and sets the property Os.
///
/// The instance's operating system.
///
///
public string Os
{
get { return this._os; }
set { this._os = value; }
}
// Check to see if Os property is set
internal bool IsSetOs()
{
return this._os != null;
}
///
/// Gets and sets the property Platform.
///
/// The instance's platform.
///
///
public string Platform
{
get { return this._platform; }
set { this._platform = value; }
}
// Check to see if Platform property is set
internal bool IsSetPlatform()
{
return this._platform != null;
}
///
/// Gets and sets the property PrivateDns.
///
/// The instance's private DNS name.
///
///
public string PrivateDns
{
get { return this._privateDns; }
set { this._privateDns = value; }
}
// Check to see if PrivateDns property is set
internal bool IsSetPrivateDns()
{
return this._privateDns != null;
}
///
/// Gets and sets the property PrivateIp.
///
/// The instance's private IP address.
///
///
public string PrivateIp
{
get { return this._privateIp; }
set { this._privateIp = value; }
}
// Check to see if PrivateIp property is set
internal bool IsSetPrivateIp()
{
return this._privateIp != null;
}
///
/// Gets and sets the property PublicDns.
///
/// The instance public DNS name.
///
///
public string PublicDns
{
get { return this._publicDns; }
set { this._publicDns = value; }
}
// Check to see if PublicDns property is set
internal bool IsSetPublicDns()
{
return this._publicDns != null;
}
///
/// Gets and sets the property PublicIp.
///
/// The instance public IP address.
///
///
public string PublicIp
{
get { return this._publicIp; }
set { this._publicIp = value; }
}
// Check to see if PublicIp property is set
internal bool IsSetPublicIp()
{
return this._publicIp != null;
}
///
/// Gets and sets the property RegisteredBy.
///
/// For registered instances, who performed the registration.
///
///
public string RegisteredBy
{
get { return this._registeredBy; }
set { this._registeredBy = value; }
}
// Check to see if RegisteredBy property is set
internal bool IsSetRegisteredBy()
{
return this._registeredBy != null;
}
///
/// Gets and sets the property ReportedAgentVersion.
///
/// The instance's reported AWS OpsWorks Stacks agent version.
///
///
public string ReportedAgentVersion
{
get { return this._reportedAgentVersion; }
set { this._reportedAgentVersion = value; }
}
// Check to see if ReportedAgentVersion property is set
internal bool IsSetReportedAgentVersion()
{
return this._reportedAgentVersion != null;
}
///
/// Gets and sets the property ReportedOs.
///
/// For registered instances, the reported operating system.
///
///
public ReportedOs ReportedOs
{
get { return this._reportedOs; }
set { this._reportedOs = value; }
}
// Check to see if ReportedOs property is set
internal bool IsSetReportedOs()
{
return this._reportedOs != null;
}
///
/// Gets and sets the property RootDeviceType.
///
/// The instance's root device type. For more information, see Storage
/// for the Root Device.
///
///
public RootDeviceType RootDeviceType
{
get { return this._rootDeviceType; }
set { this._rootDeviceType = value; }
}
// Check to see if RootDeviceType property is set
internal bool IsSetRootDeviceType()
{
return this._rootDeviceType != null;
}
///
/// Gets and sets the property RootDeviceVolumeId.
///
/// The root device volume ID.
///
///
public string RootDeviceVolumeId
{
get { return this._rootDeviceVolumeId; }
set { this._rootDeviceVolumeId = value; }
}
// Check to see if RootDeviceVolumeId property is set
internal bool IsSetRootDeviceVolumeId()
{
return this._rootDeviceVolumeId != null;
}
///
/// Gets and sets the property SecurityGroupIds.
///
/// An array containing the instance security group IDs.
///
///
public List SecurityGroupIds
{
get { return this._securityGroupIds; }
set { this._securityGroupIds = value; }
}
// Check to see if SecurityGroupIds property is set
internal bool IsSetSecurityGroupIds()
{
return this._securityGroupIds != null && this._securityGroupIds.Count > 0;
}
///
/// Gets and sets the property SshHostDsaKeyFingerprint.
///
/// The SSH key's Deep Security Agent (DSA) fingerprint.
///
///
public string SshHostDsaKeyFingerprint
{
get { return this._sshHostDsaKeyFingerprint; }
set { this._sshHostDsaKeyFingerprint = value; }
}
// Check to see if SshHostDsaKeyFingerprint property is set
internal bool IsSetSshHostDsaKeyFingerprint()
{
return this._sshHostDsaKeyFingerprint != null;
}
///
/// Gets and sets the property SshHostRsaKeyFingerprint.
///
/// The SSH key's RSA fingerprint.
///
///
public string SshHostRsaKeyFingerprint
{
get { return this._sshHostRsaKeyFingerprint; }
set { this._sshHostRsaKeyFingerprint = value; }
}
// Check to see if SshHostRsaKeyFingerprint property is set
internal bool IsSetSshHostRsaKeyFingerprint()
{
return this._sshHostRsaKeyFingerprint != null;
}
///
/// Gets and sets the property SshKeyName.
///
/// The instance's Amazon EC2 key-pair name.
///
///
public string SshKeyName
{
get { return this._sshKeyName; }
set { this._sshKeyName = value; }
}
// Check to see if SshKeyName property is set
internal bool IsSetSshKeyName()
{
return this._sshKeyName != null;
}
///
/// Gets and sets the property StackId.
///
/// The stack ID.
///
///
public string StackId
{
get { return this._stackId; }
set { this._stackId = value; }
}
// Check to see if StackId property is set
internal bool IsSetStackId()
{
return this._stackId != null;
}
///
/// Gets and sets the property Status.
///
/// The instance status:
///
/// -
///
///
booting
///
/// -
///
///
connection_lost
///
/// -
///
///
online
///
/// -
///
///
pending
///
/// -
///
///
rebooting
///
/// -
///
///
requested
///
/// -
///
///
running_setup
///
/// -
///
///
setup_failed
///
/// -
///
///
shutting_down
///
/// -
///
///
start_failed
///
/// -
///
///
stop_failed
///
/// -
///
///
stopped
///
/// -
///
///
stopping
///
/// -
///
///
terminated
///
/// -
///
///
terminating
///
///
///
public string Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property SubnetId.
///
/// The instance's subnet ID; applicable only if the stack is running in a VPC.
///
///
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;
}
///
/// Gets and sets the property Tenancy.
///
/// The instance's tenancy option, such as dedicated
or host
.
///
///
public string Tenancy
{
get { return this._tenancy; }
set { this._tenancy = value; }
}
// Check to see if Tenancy property is set
internal bool IsSetTenancy()
{
return this._tenancy != null;
}
///
/// Gets and sets the property VirtualizationType.
///
/// The instance's virtualization type: paravirtual
or hvm
.
///
///
public VirtualizationType VirtualizationType
{
get { return this._virtualizationType; }
set { this._virtualizationType = value; }
}
// Check to see if VirtualizationType property is set
internal bool IsSetVirtualizationType()
{
return this._virtualizationType != null;
}
}
}