/*
* 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
{
///
/// An IPAM resource discovery association. An associated resource discovery is a resource
/// discovery that has been associated with an IPAM. IPAM aggregates the resource CIDRs
/// discovered by the associated resource discovery.
///
public partial class IpamResourceDiscoveryAssociation
{
private string _ipamArn;
private string _ipamId;
private string _ipamRegion;
private string _ipamResourceDiscoveryAssociationArn;
private string _ipamResourceDiscoveryAssociationId;
private string _ipamResourceDiscoveryId;
private bool? _isDefault;
private string _ownerId;
private IpamAssociatedResourceDiscoveryStatus _resourceDiscoveryStatus;
private IpamResourceDiscoveryAssociationState _state;
private List _tags = new List();
///
/// Gets and sets the property IpamArn.
///
/// The IPAM ARN.
///
///
[AWSProperty(Min=1, Max=1283)]
public string IpamArn
{
get { return this._ipamArn; }
set { this._ipamArn = value; }
}
// Check to see if IpamArn property is set
internal bool IsSetIpamArn()
{
return this._ipamArn != null;
}
///
/// Gets and sets the property IpamId.
///
/// The IPAM ID.
///
///
public string IpamId
{
get { return this._ipamId; }
set { this._ipamId = value; }
}
// Check to see if IpamId property is set
internal bool IsSetIpamId()
{
return this._ipamId != null;
}
///
/// Gets and sets the property IpamRegion.
///
/// The IPAM home Region.
///
///
public string IpamRegion
{
get { return this._ipamRegion; }
set { this._ipamRegion = value; }
}
// Check to see if IpamRegion property is set
internal bool IsSetIpamRegion()
{
return this._ipamRegion != null;
}
///
/// Gets and sets the property IpamResourceDiscoveryAssociationArn.
///
/// The resource discovery association Amazon Resource Name (ARN).
///
///
public string IpamResourceDiscoveryAssociationArn
{
get { return this._ipamResourceDiscoveryAssociationArn; }
set { this._ipamResourceDiscoveryAssociationArn = value; }
}
// Check to see if IpamResourceDiscoveryAssociationArn property is set
internal bool IsSetIpamResourceDiscoveryAssociationArn()
{
return this._ipamResourceDiscoveryAssociationArn != null;
}
///
/// Gets and sets the property IpamResourceDiscoveryAssociationId.
///
/// The resource discovery association ID.
///
///
public string IpamResourceDiscoveryAssociationId
{
get { return this._ipamResourceDiscoveryAssociationId; }
set { this._ipamResourceDiscoveryAssociationId = value; }
}
// Check to see if IpamResourceDiscoveryAssociationId property is set
internal bool IsSetIpamResourceDiscoveryAssociationId()
{
return this._ipamResourceDiscoveryAssociationId != null;
}
///
/// Gets and sets the property IpamResourceDiscoveryId.
///
/// The resource discovery ID.
///
///
public string IpamResourceDiscoveryId
{
get { return this._ipamResourceDiscoveryId; }
set { this._ipamResourceDiscoveryId = value; }
}
// Check to see if IpamResourceDiscoveryId property is set
internal bool IsSetIpamResourceDiscoveryId()
{
return this._ipamResourceDiscoveryId != null;
}
///
/// Gets and sets the property IsDefault.
///
/// Defines if the resource discovery is the default. When you create an IPAM, a default
/// resource discovery is created for your IPAM and it's associated with your IPAM.
///
///
public bool IsDefault
{
get { return this._isDefault.GetValueOrDefault(); }
set { this._isDefault = value; }
}
// Check to see if IsDefault property is set
internal bool IsSetIsDefault()
{
return this._isDefault.HasValue;
}
///
/// Gets and sets the property OwnerId.
///
/// The Amazon Web Services account ID of the resource discovery owner.
///
///
public string OwnerId
{
get { return this._ownerId; }
set { this._ownerId = value; }
}
// Check to see if OwnerId property is set
internal bool IsSetOwnerId()
{
return this._ownerId != null;
}
///
/// Gets and sets the property ResourceDiscoveryStatus.
///
/// The resource discovery status.
///
/// -
///
///
active
- Connection or permissions required to read the results of the
/// resource discovery are intact.
///
/// -
///
///
not-found
- Connection or permissions required to read the results of
/// the resource discovery are broken. This may happen if the owner of the resource discovery
/// stopped sharing it or deleted the resource discovery. Verify the resource discovery
/// still exists and the Amazon Web Services RAM resource share is still intact.
///
///
///
public IpamAssociatedResourceDiscoveryStatus ResourceDiscoveryStatus
{
get { return this._resourceDiscoveryStatus; }
set { this._resourceDiscoveryStatus = value; }
}
// Check to see if ResourceDiscoveryStatus property is set
internal bool IsSetResourceDiscoveryStatus()
{
return this._resourceDiscoveryStatus != null;
}
///
/// Gets and sets the property State.
///
/// The lifecycle state of the association when you associate or disassociate a resource
/// discovery.
///
/// -
///
///
associate-in-progress
- Resource discovery is being associated.
///
/// -
///
///
associate-complete
- Resource discovery association is complete.
///
/// -
///
///
associate-failed
- Resource discovery association has failed.
///
/// -
///
///
disassociate-in-progress
- Resource discovery is being disassociated.
///
/// -
///
///
disassociate-complete
- Resource discovery disassociation is complete.
///
/// -
///
///
disassociate-failed
- Resource discovery disassociation has failed.
///
/// -
///
///
isolate-in-progress
- Amazon Web Services account that created the resource
/// discovery association has been removed and the resource discovery associatation is
/// being isolated.
///
/// -
///
///
isolate-complete
- Resource discovery isolation is complete..
///
/// -
///
///
restore-in-progress
- Resource discovery is being restored.
///
///
///
public IpamResourceDiscoveryAssociationState State
{
get { return this._state; }
set { this._state = value; }
}
// Check to see if State property is set
internal bool IsSetState()
{
return this._state != null;
}
///
/// Gets and sets the property Tags.
///
/// A tag is a label that you assign to an Amazon Web Services resource. Each tag consists
/// of a key and an optional value. You can use tags to search and filter your resources
/// or track your Amazon Web Services costs.
///
///
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
}
}