/*
* 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 an attachment between a resource and a transit gateway.
///
public partial class TransitGatewayAttachment
{
private TransitGatewayAttachmentAssociation _association;
private DateTime? _creationTime;
private string _resourceId;
private string _resourceOwnerId;
private TransitGatewayAttachmentResourceType _resourceType;
private TransitGatewayAttachmentState _state;
private List _tags = new List();
private string _transitGatewayAttachmentId;
private string _transitGatewayId;
private string _transitGatewayOwnerId;
///
/// Gets and sets the property Association.
///
/// The association.
///
///
public TransitGatewayAttachmentAssociation Association
{
get { return this._association; }
set { this._association = value; }
}
// Check to see if Association property is set
internal bool IsSetAssociation()
{
return this._association != null;
}
///
/// Gets and sets the property CreationTime.
///
/// The creation time.
///
///
public DateTime CreationTime
{
get { return this._creationTime.GetValueOrDefault(); }
set { this._creationTime = value; }
}
// Check to see if CreationTime property is set
internal bool IsSetCreationTime()
{
return this._creationTime.HasValue;
}
///
/// Gets and sets the property ResourceId.
///
/// The ID of the resource.
///
///
public string ResourceId
{
get { return this._resourceId; }
set { this._resourceId = value; }
}
// Check to see if ResourceId property is set
internal bool IsSetResourceId()
{
return this._resourceId != null;
}
///
/// Gets and sets the property ResourceOwnerId.
///
/// The ID of the Amazon Web Services account that owns the resource.
///
///
public string ResourceOwnerId
{
get { return this._resourceOwnerId; }
set { this._resourceOwnerId = value; }
}
// Check to see if ResourceOwnerId property is set
internal bool IsSetResourceOwnerId()
{
return this._resourceOwnerId != null;
}
///
/// Gets and sets the property ResourceType.
///
/// The resource type. Note that the tgw-peering
resource type has been deprecated.
///
///
public TransitGatewayAttachmentResourceType ResourceType
{
get { return this._resourceType; }
set { this._resourceType = value; }
}
// Check to see if ResourceType property is set
internal bool IsSetResourceType()
{
return this._resourceType != null;
}
///
/// Gets and sets the property State.
///
/// The attachment state. Note that the initiating
state has been deprecated.
///
///
public TransitGatewayAttachmentState 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.
///
/// The tags for the attachment.
///
///
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;
}
///
/// Gets and sets the property TransitGatewayAttachmentId.
///
/// The ID of the attachment.
///
///
public string TransitGatewayAttachmentId
{
get { return this._transitGatewayAttachmentId; }
set { this._transitGatewayAttachmentId = value; }
}
// Check to see if TransitGatewayAttachmentId property is set
internal bool IsSetTransitGatewayAttachmentId()
{
return this._transitGatewayAttachmentId != null;
}
///
/// Gets and sets the property TransitGatewayId.
///
/// The ID of the transit gateway.
///
///
public string TransitGatewayId
{
get { return this._transitGatewayId; }
set { this._transitGatewayId = value; }
}
// Check to see if TransitGatewayId property is set
internal bool IsSetTransitGatewayId()
{
return this._transitGatewayId != null;
}
///
/// Gets and sets the property TransitGatewayOwnerId.
///
/// The ID of the Amazon Web Services account that owns the transit gateway.
///
///
public string TransitGatewayOwnerId
{
get { return this._transitGatewayOwnerId; }
set { this._transitGatewayOwnerId = value; }
}
// Check to see if TransitGatewayOwnerId property is set
internal bool IsSetTransitGatewayOwnerId()
{
return this._transitGatewayOwnerId != null;
}
}
}