/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ConfigService { namespace Model { /** *

Returns the status for an organization Config rule in an * organization.

See Also:

AWS * API Reference

*/ class OrganizationConfigRuleStatus { public: AWS_CONFIGSERVICE_API OrganizationConfigRuleStatus(); AWS_CONFIGSERVICE_API OrganizationConfigRuleStatus(Aws::Utils::Json::JsonView jsonValue); AWS_CONFIGSERVICE_API OrganizationConfigRuleStatus& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CONFIGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The name that you assign to organization Config rule.

*/ inline const Aws::String& GetOrganizationConfigRuleName() const{ return m_organizationConfigRuleName; } /** *

The name that you assign to organization Config rule.

*/ inline bool OrganizationConfigRuleNameHasBeenSet() const { return m_organizationConfigRuleNameHasBeenSet; } /** *

The name that you assign to organization Config rule.

*/ inline void SetOrganizationConfigRuleName(const Aws::String& value) { m_organizationConfigRuleNameHasBeenSet = true; m_organizationConfigRuleName = value; } /** *

The name that you assign to organization Config rule.

*/ inline void SetOrganizationConfigRuleName(Aws::String&& value) { m_organizationConfigRuleNameHasBeenSet = true; m_organizationConfigRuleName = std::move(value); } /** *

The name that you assign to organization Config rule.

*/ inline void SetOrganizationConfigRuleName(const char* value) { m_organizationConfigRuleNameHasBeenSet = true; m_organizationConfigRuleName.assign(value); } /** *

The name that you assign to organization Config rule.

*/ inline OrganizationConfigRuleStatus& WithOrganizationConfigRuleName(const Aws::String& value) { SetOrganizationConfigRuleName(value); return *this;} /** *

The name that you assign to organization Config rule.

*/ inline OrganizationConfigRuleStatus& WithOrganizationConfigRuleName(Aws::String&& value) { SetOrganizationConfigRuleName(std::move(value)); return *this;} /** *

The name that you assign to organization Config rule.

*/ inline OrganizationConfigRuleStatus& WithOrganizationConfigRuleName(const char* value) { SetOrganizationConfigRuleName(value); return *this;} /** *

Indicates deployment status of an organization Config rule. When management * account calls PutOrganizationConfigRule action for the first time, Config rule * status is created in all the member accounts. When management account calls * PutOrganizationConfigRule action for the second time, Config rule status is * updated in all the member accounts. Additionally, Config rule status is updated * when one or more member accounts join or leave an organization. Config rule * status is deleted when the management account deletes OrganizationConfigRule in * all the member accounts and disables service access for * config-multiaccountsetup.amazonaws.com.

Config sets the * state of the rule to:

  • CREATE_SUCCESSFUL when an * organization Config rule has been successfully created in all the member * accounts.

  • CREATE_IN_PROGRESS when an * organization Config rule creation is in progress.

  • * CREATE_FAILED when an organization Config rule creation failed in * one or more member accounts within that organization.

  • * DELETE_FAILED when an organization Config rule deletion failed in * one or more member accounts within that organization.

  • * DELETE_IN_PROGRESS when an organization Config rule deletion is in * progress.

  • DELETE_SUCCESSFUL when an organization * Config rule has been successfully deleted from all the member accounts.

    *
  • UPDATE_SUCCESSFUL when an organization Config rule * has been successfully updated in all the member accounts.

  • * UPDATE_IN_PROGRESS when an organization Config rule update is in * progress.

  • UPDATE_FAILED when an organization * Config rule update failed in one or more member accounts within that * organization.

*/ inline const OrganizationRuleStatus& GetOrganizationRuleStatus() const{ return m_organizationRuleStatus; } /** *

Indicates deployment status of an organization Config rule. When management * account calls PutOrganizationConfigRule action for the first time, Config rule * status is created in all the member accounts. When management account calls * PutOrganizationConfigRule action for the second time, Config rule status is * updated in all the member accounts. Additionally, Config rule status is updated * when one or more member accounts join or leave an organization. Config rule * status is deleted when the management account deletes OrganizationConfigRule in * all the member accounts and disables service access for * config-multiaccountsetup.amazonaws.com.

Config sets the * state of the rule to:

  • CREATE_SUCCESSFUL when an * organization Config rule has been successfully created in all the member * accounts.

  • CREATE_IN_PROGRESS when an * organization Config rule creation is in progress.

  • * CREATE_FAILED when an organization Config rule creation failed in * one or more member accounts within that organization.

  • * DELETE_FAILED when an organization Config rule deletion failed in * one or more member accounts within that organization.

  • * DELETE_IN_PROGRESS when an organization Config rule deletion is in * progress.

  • DELETE_SUCCESSFUL when an organization * Config rule has been successfully deleted from all the member accounts.

    *
  • UPDATE_SUCCESSFUL when an organization Config rule * has been successfully updated in all the member accounts.

  • * UPDATE_IN_PROGRESS when an organization Config rule update is in * progress.

  • UPDATE_FAILED when an organization * Config rule update failed in one or more member accounts within that * organization.

*/ inline bool OrganizationRuleStatusHasBeenSet() const { return m_organizationRuleStatusHasBeenSet; } /** *

Indicates deployment status of an organization Config rule. When management * account calls PutOrganizationConfigRule action for the first time, Config rule * status is created in all the member accounts. When management account calls * PutOrganizationConfigRule action for the second time, Config rule status is * updated in all the member accounts. Additionally, Config rule status is updated * when one or more member accounts join or leave an organization. Config rule * status is deleted when the management account deletes OrganizationConfigRule in * all the member accounts and disables service access for * config-multiaccountsetup.amazonaws.com.

Config sets the * state of the rule to:

  • CREATE_SUCCESSFUL when an * organization Config rule has been successfully created in all the member * accounts.

  • CREATE_IN_PROGRESS when an * organization Config rule creation is in progress.

  • * CREATE_FAILED when an organization Config rule creation failed in * one or more member accounts within that organization.

  • * DELETE_FAILED when an organization Config rule deletion failed in * one or more member accounts within that organization.

  • * DELETE_IN_PROGRESS when an organization Config rule deletion is in * progress.

  • DELETE_SUCCESSFUL when an organization * Config rule has been successfully deleted from all the member accounts.

    *
  • UPDATE_SUCCESSFUL when an organization Config rule * has been successfully updated in all the member accounts.

  • * UPDATE_IN_PROGRESS when an organization Config rule update is in * progress.

  • UPDATE_FAILED when an organization * Config rule update failed in one or more member accounts within that * organization.

*/ inline void SetOrganizationRuleStatus(const OrganizationRuleStatus& value) { m_organizationRuleStatusHasBeenSet = true; m_organizationRuleStatus = value; } /** *

Indicates deployment status of an organization Config rule. When management * account calls PutOrganizationConfigRule action for the first time, Config rule * status is created in all the member accounts. When management account calls * PutOrganizationConfigRule action for the second time, Config rule status is * updated in all the member accounts. Additionally, Config rule status is updated * when one or more member accounts join or leave an organization. Config rule * status is deleted when the management account deletes OrganizationConfigRule in * all the member accounts and disables service access for * config-multiaccountsetup.amazonaws.com.

Config sets the * state of the rule to:

  • CREATE_SUCCESSFUL when an * organization Config rule has been successfully created in all the member * accounts.

  • CREATE_IN_PROGRESS when an * organization Config rule creation is in progress.

  • * CREATE_FAILED when an organization Config rule creation failed in * one or more member accounts within that organization.

  • * DELETE_FAILED when an organization Config rule deletion failed in * one or more member accounts within that organization.

  • * DELETE_IN_PROGRESS when an organization Config rule deletion is in * progress.

  • DELETE_SUCCESSFUL when an organization * Config rule has been successfully deleted from all the member accounts.

    *
  • UPDATE_SUCCESSFUL when an organization Config rule * has been successfully updated in all the member accounts.

  • * UPDATE_IN_PROGRESS when an organization Config rule update is in * progress.

  • UPDATE_FAILED when an organization * Config rule update failed in one or more member accounts within that * organization.

*/ inline void SetOrganizationRuleStatus(OrganizationRuleStatus&& value) { m_organizationRuleStatusHasBeenSet = true; m_organizationRuleStatus = std::move(value); } /** *

Indicates deployment status of an organization Config rule. When management * account calls PutOrganizationConfigRule action for the first time, Config rule * status is created in all the member accounts. When management account calls * PutOrganizationConfigRule action for the second time, Config rule status is * updated in all the member accounts. Additionally, Config rule status is updated * when one or more member accounts join or leave an organization. Config rule * status is deleted when the management account deletes OrganizationConfigRule in * all the member accounts and disables service access for * config-multiaccountsetup.amazonaws.com.

Config sets the * state of the rule to:

  • CREATE_SUCCESSFUL when an * organization Config rule has been successfully created in all the member * accounts.

  • CREATE_IN_PROGRESS when an * organization Config rule creation is in progress.

  • * CREATE_FAILED when an organization Config rule creation failed in * one or more member accounts within that organization.

  • * DELETE_FAILED when an organization Config rule deletion failed in * one or more member accounts within that organization.

  • * DELETE_IN_PROGRESS when an organization Config rule deletion is in * progress.

  • DELETE_SUCCESSFUL when an organization * Config rule has been successfully deleted from all the member accounts.

    *
  • UPDATE_SUCCESSFUL when an organization Config rule * has been successfully updated in all the member accounts.

  • * UPDATE_IN_PROGRESS when an organization Config rule update is in * progress.

  • UPDATE_FAILED when an organization * Config rule update failed in one or more member accounts within that * organization.

*/ inline OrganizationConfigRuleStatus& WithOrganizationRuleStatus(const OrganizationRuleStatus& value) { SetOrganizationRuleStatus(value); return *this;} /** *

Indicates deployment status of an organization Config rule. When management * account calls PutOrganizationConfigRule action for the first time, Config rule * status is created in all the member accounts. When management account calls * PutOrganizationConfigRule action for the second time, Config rule status is * updated in all the member accounts. Additionally, Config rule status is updated * when one or more member accounts join or leave an organization. Config rule * status is deleted when the management account deletes OrganizationConfigRule in * all the member accounts and disables service access for * config-multiaccountsetup.amazonaws.com.

Config sets the * state of the rule to:

  • CREATE_SUCCESSFUL when an * organization Config rule has been successfully created in all the member * accounts.

  • CREATE_IN_PROGRESS when an * organization Config rule creation is in progress.

  • * CREATE_FAILED when an organization Config rule creation failed in * one or more member accounts within that organization.

  • * DELETE_FAILED when an organization Config rule deletion failed in * one or more member accounts within that organization.

  • * DELETE_IN_PROGRESS when an organization Config rule deletion is in * progress.

  • DELETE_SUCCESSFUL when an organization * Config rule has been successfully deleted from all the member accounts.

    *
  • UPDATE_SUCCESSFUL when an organization Config rule * has been successfully updated in all the member accounts.

  • * UPDATE_IN_PROGRESS when an organization Config rule update is in * progress.

  • UPDATE_FAILED when an organization * Config rule update failed in one or more member accounts within that * organization.

*/ inline OrganizationConfigRuleStatus& WithOrganizationRuleStatus(OrganizationRuleStatus&& value) { SetOrganizationRuleStatus(std::move(value)); return *this;} /** *

An error code that is returned when organization Config rule creation or * deletion has failed.

*/ inline const Aws::String& GetErrorCode() const{ return m_errorCode; } /** *

An error code that is returned when organization Config rule creation or * deletion has failed.

*/ inline bool ErrorCodeHasBeenSet() const { return m_errorCodeHasBeenSet; } /** *

An error code that is returned when organization Config rule creation or * deletion has failed.

*/ inline void SetErrorCode(const Aws::String& value) { m_errorCodeHasBeenSet = true; m_errorCode = value; } /** *

An error code that is returned when organization Config rule creation or * deletion has failed.

*/ inline void SetErrorCode(Aws::String&& value) { m_errorCodeHasBeenSet = true; m_errorCode = std::move(value); } /** *

An error code that is returned when organization Config rule creation or * deletion has failed.

*/ inline void SetErrorCode(const char* value) { m_errorCodeHasBeenSet = true; m_errorCode.assign(value); } /** *

An error code that is returned when organization Config rule creation or * deletion has failed.

*/ inline OrganizationConfigRuleStatus& WithErrorCode(const Aws::String& value) { SetErrorCode(value); return *this;} /** *

An error code that is returned when organization Config rule creation or * deletion has failed.

*/ inline OrganizationConfigRuleStatus& WithErrorCode(Aws::String&& value) { SetErrorCode(std::move(value)); return *this;} /** *

An error code that is returned when organization Config rule creation or * deletion has failed.

*/ inline OrganizationConfigRuleStatus& WithErrorCode(const char* value) { SetErrorCode(value); return *this;} /** *

An error message indicating that organization Config rule creation or * deletion failed due to an error.

*/ inline const Aws::String& GetErrorMessage() const{ return m_errorMessage; } /** *

An error message indicating that organization Config rule creation or * deletion failed due to an error.

*/ inline bool ErrorMessageHasBeenSet() const { return m_errorMessageHasBeenSet; } /** *

An error message indicating that organization Config rule creation or * deletion failed due to an error.

*/ inline void SetErrorMessage(const Aws::String& value) { m_errorMessageHasBeenSet = true; m_errorMessage = value; } /** *

An error message indicating that organization Config rule creation or * deletion failed due to an error.

*/ inline void SetErrorMessage(Aws::String&& value) { m_errorMessageHasBeenSet = true; m_errorMessage = std::move(value); } /** *

An error message indicating that organization Config rule creation or * deletion failed due to an error.

*/ inline void SetErrorMessage(const char* value) { m_errorMessageHasBeenSet = true; m_errorMessage.assign(value); } /** *

An error message indicating that organization Config rule creation or * deletion failed due to an error.

*/ inline OrganizationConfigRuleStatus& WithErrorMessage(const Aws::String& value) { SetErrorMessage(value); return *this;} /** *

An error message indicating that organization Config rule creation or * deletion failed due to an error.

*/ inline OrganizationConfigRuleStatus& WithErrorMessage(Aws::String&& value) { SetErrorMessage(std::move(value)); return *this;} /** *

An error message indicating that organization Config rule creation or * deletion failed due to an error.

*/ inline OrganizationConfigRuleStatus& WithErrorMessage(const char* value) { SetErrorMessage(value); return *this;} /** *

The timestamp of the last update.

*/ inline const Aws::Utils::DateTime& GetLastUpdateTime() const{ return m_lastUpdateTime; } /** *

The timestamp of the last update.

*/ inline bool LastUpdateTimeHasBeenSet() const { return m_lastUpdateTimeHasBeenSet; } /** *

The timestamp of the last update.

*/ inline void SetLastUpdateTime(const Aws::Utils::DateTime& value) { m_lastUpdateTimeHasBeenSet = true; m_lastUpdateTime = value; } /** *

The timestamp of the last update.

*/ inline void SetLastUpdateTime(Aws::Utils::DateTime&& value) { m_lastUpdateTimeHasBeenSet = true; m_lastUpdateTime = std::move(value); } /** *

The timestamp of the last update.

*/ inline OrganizationConfigRuleStatus& WithLastUpdateTime(const Aws::Utils::DateTime& value) { SetLastUpdateTime(value); return *this;} /** *

The timestamp of the last update.

*/ inline OrganizationConfigRuleStatus& WithLastUpdateTime(Aws::Utils::DateTime&& value) { SetLastUpdateTime(std::move(value)); return *this;} private: Aws::String m_organizationConfigRuleName; bool m_organizationConfigRuleNameHasBeenSet = false; OrganizationRuleStatus m_organizationRuleStatus; bool m_organizationRuleStatusHasBeenSet = false; Aws::String m_errorCode; bool m_errorCodeHasBeenSet = false; Aws::String m_errorMessage; bool m_errorMessageHasBeenSet = false; Aws::Utils::DateTime m_lastUpdateTime; bool m_lastUpdateTimeHasBeenSet = false; }; } // namespace Model } // namespace ConfigService } // namespace Aws