/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Indicates whether an Config rule is compliant based on account ID, region,
* compliance, and rule name. A rule is compliant if all of the resources
* that the rule evaluated comply with it. It is noncompliant if any of these
* resources do not comply.See Also:
AWS
* API Reference
The name of the Config rule.
*/ inline const Aws::String& GetConfigRuleName() const{ return m_configRuleName; } /** *The name of the Config rule.
*/ inline bool ConfigRuleNameHasBeenSet() const { return m_configRuleNameHasBeenSet; } /** *The name of the Config rule.
*/ inline void SetConfigRuleName(const Aws::String& value) { m_configRuleNameHasBeenSet = true; m_configRuleName = value; } /** *The name of the Config rule.
*/ inline void SetConfigRuleName(Aws::String&& value) { m_configRuleNameHasBeenSet = true; m_configRuleName = std::move(value); } /** *The name of the Config rule.
*/ inline void SetConfigRuleName(const char* value) { m_configRuleNameHasBeenSet = true; m_configRuleName.assign(value); } /** *The name of the Config rule.
*/ inline AggregateComplianceByConfigRule& WithConfigRuleName(const Aws::String& value) { SetConfigRuleName(value); return *this;} /** *The name of the Config rule.
*/ inline AggregateComplianceByConfigRule& WithConfigRuleName(Aws::String&& value) { SetConfigRuleName(std::move(value)); return *this;} /** *The name of the Config rule.
*/ inline AggregateComplianceByConfigRule& WithConfigRuleName(const char* value) { SetConfigRuleName(value); return *this;} /** *Indicates whether an Amazon Web Services resource or Config rule is compliant * and provides the number of contributors that affect the compliance.
*/ inline const Compliance& GetCompliance() const{ return m_compliance; } /** *Indicates whether an Amazon Web Services resource or Config rule is compliant * and provides the number of contributors that affect the compliance.
*/ inline bool ComplianceHasBeenSet() const { return m_complianceHasBeenSet; } /** *Indicates whether an Amazon Web Services resource or Config rule is compliant * and provides the number of contributors that affect the compliance.
*/ inline void SetCompliance(const Compliance& value) { m_complianceHasBeenSet = true; m_compliance = value; } /** *Indicates whether an Amazon Web Services resource or Config rule is compliant * and provides the number of contributors that affect the compliance.
*/ inline void SetCompliance(Compliance&& value) { m_complianceHasBeenSet = true; m_compliance = std::move(value); } /** *Indicates whether an Amazon Web Services resource or Config rule is compliant * and provides the number of contributors that affect the compliance.
*/ inline AggregateComplianceByConfigRule& WithCompliance(const Compliance& value) { SetCompliance(value); return *this;} /** *Indicates whether an Amazon Web Services resource or Config rule is compliant * and provides the number of contributors that affect the compliance.
*/ inline AggregateComplianceByConfigRule& WithCompliance(Compliance&& value) { SetCompliance(std::move(value)); return *this;} /** *The 12-digit account ID of the source account.
*/ inline const Aws::String& GetAccountId() const{ return m_accountId; } /** *The 12-digit account ID of the source account.
*/ inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; } /** *The 12-digit account ID of the source account.
*/ inline void SetAccountId(const Aws::String& value) { m_accountIdHasBeenSet = true; m_accountId = value; } /** *The 12-digit account ID of the source account.
*/ inline void SetAccountId(Aws::String&& value) { m_accountIdHasBeenSet = true; m_accountId = std::move(value); } /** *The 12-digit account ID of the source account.
*/ inline void SetAccountId(const char* value) { m_accountIdHasBeenSet = true; m_accountId.assign(value); } /** *The 12-digit account ID of the source account.
*/ inline AggregateComplianceByConfigRule& WithAccountId(const Aws::String& value) { SetAccountId(value); return *this;} /** *The 12-digit account ID of the source account.
*/ inline AggregateComplianceByConfigRule& WithAccountId(Aws::String&& value) { SetAccountId(std::move(value)); return *this;} /** *The 12-digit account ID of the source account.
*/ inline AggregateComplianceByConfigRule& WithAccountId(const char* value) { SetAccountId(value); return *this;} /** *The source region from where the data is aggregated.
*/ inline const Aws::String& GetAwsRegion() const{ return m_awsRegion; } /** *The source region from where the data is aggregated.
*/ inline bool AwsRegionHasBeenSet() const { return m_awsRegionHasBeenSet; } /** *The source region from where the data is aggregated.
*/ inline void SetAwsRegion(const Aws::String& value) { m_awsRegionHasBeenSet = true; m_awsRegion = value; } /** *The source region from where the data is aggregated.
*/ inline void SetAwsRegion(Aws::String&& value) { m_awsRegionHasBeenSet = true; m_awsRegion = std::move(value); } /** *The source region from where the data is aggregated.
*/ inline void SetAwsRegion(const char* value) { m_awsRegionHasBeenSet = true; m_awsRegion.assign(value); } /** *The source region from where the data is aggregated.
*/ inline AggregateComplianceByConfigRule& WithAwsRegion(const Aws::String& value) { SetAwsRegion(value); return *this;} /** *The source region from where the data is aggregated.
*/ inline AggregateComplianceByConfigRule& WithAwsRegion(Aws::String&& value) { SetAwsRegion(std::move(value)); return *this;} /** *The source region from where the data is aggregated.
*/ inline AggregateComplianceByConfigRule& WithAwsRegion(const char* value) { SetAwsRegion(value); return *this;} private: Aws::String m_configRuleName; bool m_configRuleNameHasBeenSet = false; Compliance m_compliance; bool m_complianceHasBeenSet = false; Aws::String m_accountId; bool m_accountIdHasBeenSet = false; Aws::String m_awsRegion; bool m_awsRegionHasBeenSet = false; }; } // namespace Model } // namespace ConfigService } // namespace Aws