/*
* 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 proton-2020-07-20.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.Proton.Model
{
///
/// Summary data of an Proton environment account connection resource.
///
public partial class EnvironmentAccountConnectionSummary
{
private string _arn;
private string _componentRoleArn;
private string _environmentAccountId;
private string _environmentName;
private string _id;
private DateTime? _lastModifiedAt;
private string _managementAccountId;
private DateTime? _requestedAt;
private string _roleArn;
private EnvironmentAccountConnectionStatus _status;
///
/// Gets and sets the property Arn.
///
/// The Amazon Resource Name (ARN) of the environment account connection.
///
///
[AWSProperty(Required=true)]
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 ComponentRoleArn.
///
/// The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning
/// directly defined components in the associated environment account. It determines the
/// scope of infrastructure that a component can provision in the account.
///
///
///
/// The environment account connection must have a componentRoleArn
to allow
/// directly defined components to be associated with any environments running in the
/// account.
///
///
///
/// For more information about components, see Proton
/// components in the Proton User Guide.
///
///
[AWSProperty(Min=1, Max=200)]
public string ComponentRoleArn
{
get { return this._componentRoleArn; }
set { this._componentRoleArn = value; }
}
// Check to see if ComponentRoleArn property is set
internal bool IsSetComponentRoleArn()
{
return this._componentRoleArn != null;
}
///
/// Gets and sets the property EnvironmentAccountId.
///
/// The ID of the environment account that's connected to the environment account connection.
///
///
[AWSProperty(Required=true)]
public string EnvironmentAccountId
{
get { return this._environmentAccountId; }
set { this._environmentAccountId = value; }
}
// Check to see if EnvironmentAccountId property is set
internal bool IsSetEnvironmentAccountId()
{
return this._environmentAccountId != null;
}
///
/// Gets and sets the property EnvironmentName.
///
/// The name of the environment that's associated with the environment account connection.
///
///
[AWSProperty(Required=true, Min=1, Max=100)]
public string EnvironmentName
{
get { return this._environmentName; }
set { this._environmentName = value; }
}
// Check to see if EnvironmentName property is set
internal bool IsSetEnvironmentName()
{
return this._environmentName != null;
}
///
/// Gets and sets the property Id.
///
/// The ID of the environment account connection.
///
///
[AWSProperty(Required=true)]
public string Id
{
get { return this._id; }
set { this._id = value; }
}
// Check to see if Id property is set
internal bool IsSetId()
{
return this._id != null;
}
///
/// Gets and sets the property LastModifiedAt.
///
/// The time when the environment account connection was last modified.
///
///
[AWSProperty(Required=true)]
public DateTime LastModifiedAt
{
get { return this._lastModifiedAt.GetValueOrDefault(); }
set { this._lastModifiedAt = value; }
}
// Check to see if LastModifiedAt property is set
internal bool IsSetLastModifiedAt()
{
return this._lastModifiedAt.HasValue;
}
///
/// Gets and sets the property ManagementAccountId.
///
/// The ID of the management account that's connected to the environment account connection.
///
///
[AWSProperty(Required=true)]
public string ManagementAccountId
{
get { return this._managementAccountId; }
set { this._managementAccountId = value; }
}
// Check to see if ManagementAccountId property is set
internal bool IsSetManagementAccountId()
{
return this._managementAccountId != null;
}
///
/// Gets and sets the property RequestedAt.
///
/// The time when the environment account connection request was made.
///
///
[AWSProperty(Required=true)]
public DateTime RequestedAt
{
get { return this._requestedAt.GetValueOrDefault(); }
set { this._requestedAt = value; }
}
// Check to see if RequestedAt property is set
internal bool IsSetRequestedAt()
{
return this._requestedAt.HasValue;
}
///
/// Gets and sets the property RoleArn.
///
/// The IAM service role that's associated with the environment account connection.
///
///
[AWSProperty(Required=true, Min=1, Max=200)]
public string RoleArn
{
get { return this._roleArn; }
set { this._roleArn = value; }
}
// Check to see if RoleArn property is set
internal bool IsSetRoleArn()
{
return this._roleArn != null;
}
///
/// Gets and sets the property Status.
///
/// The status of the environment account connection.
///
///
[AWSProperty(Required=true)]
public EnvironmentAccountConnectionStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
}
}