/*
* 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 config-2014-11-12.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.ConfigService.Model
{
///
/// Organization Config rule creation or deletion status in each member account. This
/// includes the name of the rule, the status, error code and error message when the rule
/// creation or deletion failed.
///
public partial class MemberAccountStatus
{
private string _accountId;
private string _configRuleName;
private string _errorCode;
private string _errorMessage;
private DateTime? _lastUpdateTime;
private MemberAccountRuleStatus _memberAccountRuleStatus;
///
/// Gets and sets the property AccountId.
///
/// The 12-digit account ID of a member account.
///
///
[AWSProperty(Required=true)]
public string AccountId
{
get { return this._accountId; }
set { this._accountId = value; }
}
// Check to see if AccountId property is set
internal bool IsSetAccountId()
{
return this._accountId != null;
}
///
/// Gets and sets the property ConfigRuleName.
///
/// The name of Config rule deployed in the member account.
///
///
[AWSProperty(Required=true, Min=1, Max=64)]
public string ConfigRuleName
{
get { return this._configRuleName; }
set { this._configRuleName = value; }
}
// Check to see if ConfigRuleName property is set
internal bool IsSetConfigRuleName()
{
return this._configRuleName != null;
}
///
/// Gets and sets the property ErrorCode.
///
/// An error code that is returned when Config rule creation or deletion failed in the
/// member account.
///
///
public string ErrorCode
{
get { return this._errorCode; }
set { this._errorCode = value; }
}
// Check to see if ErrorCode property is set
internal bool IsSetErrorCode()
{
return this._errorCode != null;
}
///
/// Gets and sets the property ErrorMessage.
///
/// An error message indicating that Config rule account creation or deletion has failed
/// due to an error in the member account.
///
///
public string ErrorMessage
{
get { return this._errorMessage; }
set { this._errorMessage = value; }
}
// Check to see if ErrorMessage property is set
internal bool IsSetErrorMessage()
{
return this._errorMessage != null;
}
///
/// Gets and sets the property LastUpdateTime.
///
/// The timestamp of the last status update.
///
///
public DateTime LastUpdateTime
{
get { return this._lastUpdateTime.GetValueOrDefault(); }
set { this._lastUpdateTime = value; }
}
// Check to see if LastUpdateTime property is set
internal bool IsSetLastUpdateTime()
{
return this._lastUpdateTime.HasValue;
}
///
/// Gets and sets the property MemberAccountRuleStatus.
///
/// Indicates deployment status for Config rule in the member account. When management
/// account calls PutOrganizationConfigRule
action for the first time, Config
/// rule status is created in the member account. When management account calls PutOrganizationConfigRule
/// action for the second time, Config rule status is updated in the member account. Config
/// rule status is deleted when the management account deletes OrganizationConfigRule
/// and disables service access for config-multiaccountsetup.amazonaws.com
.
///
///
///
///
/// Config sets the state of the rule to:
///
/// -
///
///
CREATE_SUCCESSFUL
when Config rule has been created in the member account.
///
///
/// -
///
///
CREATE_IN_PROGRESS
when Config rule is being created in the member account.
///
/// -
///
///
CREATE_FAILED
when Config rule creation has failed in the member account.
///
/// -
///
///
DELETE_FAILED
when Config rule deletion has failed in the member account.
///
/// -
///
///
DELETE_IN_PROGRESS
when Config rule is being deleted in the member account.
///
/// -
///
///
DELETE_SUCCESSFUL
when Config rule has been deleted in the member account.
///
///
/// -
///
///
UPDATE_SUCCESSFUL
when Config rule has been updated in the member account.
///
/// -
///
///
UPDATE_IN_PROGRESS
when Config rule is being updated in the member account.
///
/// -
///
///
UPDATE_FAILED
when Config rule deletion has failed in the member account.
///
///
///
[AWSProperty(Required=true)]
public MemberAccountRuleStatus MemberAccountRuleStatus
{
get { return this._memberAccountRuleStatus; }
set { this._memberAccountRuleStatus = value; }
}
// Check to see if MemberAccountRuleStatus property is set
internal bool IsSetMemberAccountRuleStatus()
{
return this._memberAccountRuleStatus != null;
}
}
}