/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The settings object that holds all supported Audit Manager settings.
* See Also:
AWS
* API Reference
Specifies whether Organizations is enabled.
*/ inline bool GetIsAwsOrgEnabled() const{ return m_isAwsOrgEnabled; } /** *Specifies whether Organizations is enabled.
*/ inline bool IsAwsOrgEnabledHasBeenSet() const { return m_isAwsOrgEnabledHasBeenSet; } /** *Specifies whether Organizations is enabled.
*/ inline void SetIsAwsOrgEnabled(bool value) { m_isAwsOrgEnabledHasBeenSet = true; m_isAwsOrgEnabled = value; } /** *Specifies whether Organizations is enabled.
*/ inline Settings& WithIsAwsOrgEnabled(bool value) { SetIsAwsOrgEnabled(value); return *this;} /** *The designated Amazon Simple Notification Service (Amazon SNS) topic.
*/ inline const Aws::String& GetSnsTopic() const{ return m_snsTopic; } /** *The designated Amazon Simple Notification Service (Amazon SNS) topic.
*/ inline bool SnsTopicHasBeenSet() const { return m_snsTopicHasBeenSet; } /** *The designated Amazon Simple Notification Service (Amazon SNS) topic.
*/ inline void SetSnsTopic(const Aws::String& value) { m_snsTopicHasBeenSet = true; m_snsTopic = value; } /** *The designated Amazon Simple Notification Service (Amazon SNS) topic.
*/ inline void SetSnsTopic(Aws::String&& value) { m_snsTopicHasBeenSet = true; m_snsTopic = std::move(value); } /** *The designated Amazon Simple Notification Service (Amazon SNS) topic.
*/ inline void SetSnsTopic(const char* value) { m_snsTopicHasBeenSet = true; m_snsTopic.assign(value); } /** *The designated Amazon Simple Notification Service (Amazon SNS) topic.
*/ inline Settings& WithSnsTopic(const Aws::String& value) { SetSnsTopic(value); return *this;} /** *The designated Amazon Simple Notification Service (Amazon SNS) topic.
*/ inline Settings& WithSnsTopic(Aws::String&& value) { SetSnsTopic(std::move(value)); return *this;} /** *The designated Amazon Simple Notification Service (Amazon SNS) topic.
*/ inline Settings& WithSnsTopic(const char* value) { SetSnsTopic(value); return *this;} /** *The default S3 destination bucket for storing assessment reports.
*/ inline const AssessmentReportsDestination& GetDefaultAssessmentReportsDestination() const{ return m_defaultAssessmentReportsDestination; } /** *The default S3 destination bucket for storing assessment reports.
*/ inline bool DefaultAssessmentReportsDestinationHasBeenSet() const { return m_defaultAssessmentReportsDestinationHasBeenSet; } /** *The default S3 destination bucket for storing assessment reports.
*/ inline void SetDefaultAssessmentReportsDestination(const AssessmentReportsDestination& value) { m_defaultAssessmentReportsDestinationHasBeenSet = true; m_defaultAssessmentReportsDestination = value; } /** *The default S3 destination bucket for storing assessment reports.
*/ inline void SetDefaultAssessmentReportsDestination(AssessmentReportsDestination&& value) { m_defaultAssessmentReportsDestinationHasBeenSet = true; m_defaultAssessmentReportsDestination = std::move(value); } /** *The default S3 destination bucket for storing assessment reports.
*/ inline Settings& WithDefaultAssessmentReportsDestination(const AssessmentReportsDestination& value) { SetDefaultAssessmentReportsDestination(value); return *this;} /** *The default S3 destination bucket for storing assessment reports.
*/ inline Settings& WithDefaultAssessmentReportsDestination(AssessmentReportsDestination&& value) { SetDefaultAssessmentReportsDestination(std::move(value)); return *this;} /** *The designated default audit owners.
*/ inline const Aws::VectorThe designated default audit owners.
*/ inline bool DefaultProcessOwnersHasBeenSet() const { return m_defaultProcessOwnersHasBeenSet; } /** *The designated default audit owners.
*/ inline void SetDefaultProcessOwners(const Aws::VectorThe designated default audit owners.
*/ inline void SetDefaultProcessOwners(Aws::VectorThe designated default audit owners.
*/ inline Settings& WithDefaultProcessOwners(const Aws::VectorThe designated default audit owners.
*/ inline Settings& WithDefaultProcessOwners(Aws::VectorThe designated default audit owners.
*/ inline Settings& AddDefaultProcessOwners(const Role& value) { m_defaultProcessOwnersHasBeenSet = true; m_defaultProcessOwners.push_back(value); return *this; } /** *The designated default audit owners.
*/ inline Settings& AddDefaultProcessOwners(Role&& value) { m_defaultProcessOwnersHasBeenSet = true; m_defaultProcessOwners.push_back(std::move(value)); return *this; } /** *The KMS key details.
*/ inline const Aws::String& GetKmsKey() const{ return m_kmsKey; } /** *The KMS key details.
*/ inline bool KmsKeyHasBeenSet() const { return m_kmsKeyHasBeenSet; } /** *The KMS key details.
*/ inline void SetKmsKey(const Aws::String& value) { m_kmsKeyHasBeenSet = true; m_kmsKey = value; } /** *The KMS key details.
*/ inline void SetKmsKey(Aws::String&& value) { m_kmsKeyHasBeenSet = true; m_kmsKey = std::move(value); } /** *The KMS key details.
*/ inline void SetKmsKey(const char* value) { m_kmsKeyHasBeenSet = true; m_kmsKey.assign(value); } /** *The KMS key details.
*/ inline Settings& WithKmsKey(const Aws::String& value) { SetKmsKey(value); return *this;} /** *The KMS key details.
*/ inline Settings& WithKmsKey(Aws::String&& value) { SetKmsKey(std::move(value)); return *this;} /** *The KMS key details.
*/ inline Settings& WithKmsKey(const char* value) { SetKmsKey(value); return *this;} /** *The current evidence finder status and event data store details.
*/ inline const EvidenceFinderEnablement& GetEvidenceFinderEnablement() const{ return m_evidenceFinderEnablement; } /** *The current evidence finder status and event data store details.
*/ inline bool EvidenceFinderEnablementHasBeenSet() const { return m_evidenceFinderEnablementHasBeenSet; } /** *The current evidence finder status and event data store details.
*/ inline void SetEvidenceFinderEnablement(const EvidenceFinderEnablement& value) { m_evidenceFinderEnablementHasBeenSet = true; m_evidenceFinderEnablement = value; } /** *The current evidence finder status and event data store details.
*/ inline void SetEvidenceFinderEnablement(EvidenceFinderEnablement&& value) { m_evidenceFinderEnablementHasBeenSet = true; m_evidenceFinderEnablement = std::move(value); } /** *The current evidence finder status and event data store details.
*/ inline Settings& WithEvidenceFinderEnablement(const EvidenceFinderEnablement& value) { SetEvidenceFinderEnablement(value); return *this;} /** *The current evidence finder status and event data store details.
*/ inline Settings& WithEvidenceFinderEnablement(EvidenceFinderEnablement&& value) { SetEvidenceFinderEnablement(std::move(value)); return *this;} /** *The deregistration policy for your Audit Manager data. You can use this * attribute to determine how your data is handled when you deregister Audit * Manager.
*/ inline const DeregistrationPolicy& GetDeregistrationPolicy() const{ return m_deregistrationPolicy; } /** *The deregistration policy for your Audit Manager data. You can use this * attribute to determine how your data is handled when you deregister Audit * Manager.
*/ inline bool DeregistrationPolicyHasBeenSet() const { return m_deregistrationPolicyHasBeenSet; } /** *The deregistration policy for your Audit Manager data. You can use this * attribute to determine how your data is handled when you deregister Audit * Manager.
*/ inline void SetDeregistrationPolicy(const DeregistrationPolicy& value) { m_deregistrationPolicyHasBeenSet = true; m_deregistrationPolicy = value; } /** *The deregistration policy for your Audit Manager data. You can use this * attribute to determine how your data is handled when you deregister Audit * Manager.
*/ inline void SetDeregistrationPolicy(DeregistrationPolicy&& value) { m_deregistrationPolicyHasBeenSet = true; m_deregistrationPolicy = std::move(value); } /** *The deregistration policy for your Audit Manager data. You can use this * attribute to determine how your data is handled when you deregister Audit * Manager.
*/ inline Settings& WithDeregistrationPolicy(const DeregistrationPolicy& value) { SetDeregistrationPolicy(value); return *this;} /** *The deregistration policy for your Audit Manager data. You can use this * attribute to determine how your data is handled when you deregister Audit * Manager.
*/ inline Settings& WithDeregistrationPolicy(DeregistrationPolicy&& value) { SetDeregistrationPolicy(std::move(value)); return *this;} /** *The default S3 destination bucket for storing evidence finder exports.
*/ inline const DefaultExportDestination& GetDefaultExportDestination() const{ return m_defaultExportDestination; } /** *The default S3 destination bucket for storing evidence finder exports.
*/ inline bool DefaultExportDestinationHasBeenSet() const { return m_defaultExportDestinationHasBeenSet; } /** *The default S3 destination bucket for storing evidence finder exports.
*/ inline void SetDefaultExportDestination(const DefaultExportDestination& value) { m_defaultExportDestinationHasBeenSet = true; m_defaultExportDestination = value; } /** *The default S3 destination bucket for storing evidence finder exports.
*/ inline void SetDefaultExportDestination(DefaultExportDestination&& value) { m_defaultExportDestinationHasBeenSet = true; m_defaultExportDestination = std::move(value); } /** *The default S3 destination bucket for storing evidence finder exports.
*/ inline Settings& WithDefaultExportDestination(const DefaultExportDestination& value) { SetDefaultExportDestination(value); return *this;} /** *The default S3 destination bucket for storing evidence finder exports.
*/ inline Settings& WithDefaultExportDestination(DefaultExportDestination&& value) { SetDefaultExportDestination(std::move(value)); return *this;} private: bool m_isAwsOrgEnabled; bool m_isAwsOrgEnabledHasBeenSet = false; Aws::String m_snsTopic; bool m_snsTopicHasBeenSet = false; AssessmentReportsDestination m_defaultAssessmentReportsDestination; bool m_defaultAssessmentReportsDestinationHasBeenSet = false; Aws::Vector