/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include [Event-based policies only] Specifies the encryption settings for
* cross-Region snapshot copies created by event-based policies.See
* Also:
AWS
* API Reference
To encrypt a copy of an unencrypted snapshot when encryption by default is * not enabled, enable encryption using this parameter. Copies of encrypted * snapshots are encrypted, even if this parameter is false or when encryption by * default is not enabled.
*/ inline bool GetEncrypted() const{ return m_encrypted; } /** *To encrypt a copy of an unencrypted snapshot when encryption by default is * not enabled, enable encryption using this parameter. Copies of encrypted * snapshots are encrypted, even if this parameter is false or when encryption by * default is not enabled.
*/ inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; } /** *To encrypt a copy of an unencrypted snapshot when encryption by default is * not enabled, enable encryption using this parameter. Copies of encrypted * snapshots are encrypted, even if this parameter is false or when encryption by * default is not enabled.
*/ inline void SetEncrypted(bool value) { m_encryptedHasBeenSet = true; m_encrypted = value; } /** *To encrypt a copy of an unencrypted snapshot when encryption by default is * not enabled, enable encryption using this parameter. Copies of encrypted * snapshots are encrypted, even if this parameter is false or when encryption by * default is not enabled.
*/ inline EncryptionConfiguration& WithEncrypted(bool value) { SetEncrypted(value); return *this;} /** *The Amazon Resource Name (ARN) of the KMS key to use for EBS encryption. If * this parameter is not specified, the default KMS key for the account is * used.
*/ inline const Aws::String& GetCmkArn() const{ return m_cmkArn; } /** *The Amazon Resource Name (ARN) of the KMS key to use for EBS encryption. If * this parameter is not specified, the default KMS key for the account is * used.
*/ inline bool CmkArnHasBeenSet() const { return m_cmkArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the KMS key to use for EBS encryption. If * this parameter is not specified, the default KMS key for the account is * used.
*/ inline void SetCmkArn(const Aws::String& value) { m_cmkArnHasBeenSet = true; m_cmkArn = value; } /** *The Amazon Resource Name (ARN) of the KMS key to use for EBS encryption. If * this parameter is not specified, the default KMS key for the account is * used.
*/ inline void SetCmkArn(Aws::String&& value) { m_cmkArnHasBeenSet = true; m_cmkArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the KMS key to use for EBS encryption. If * this parameter is not specified, the default KMS key for the account is * used.
*/ inline void SetCmkArn(const char* value) { m_cmkArnHasBeenSet = true; m_cmkArn.assign(value); } /** *The Amazon Resource Name (ARN) of the KMS key to use for EBS encryption. If * this parameter is not specified, the default KMS key for the account is * used.
*/ inline EncryptionConfiguration& WithCmkArn(const Aws::String& value) { SetCmkArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the KMS key to use for EBS encryption. If * this parameter is not specified, the default KMS key for the account is * used.
*/ inline EncryptionConfiguration& WithCmkArn(Aws::String&& value) { SetCmkArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the KMS key to use for EBS encryption. If * this parameter is not specified, the default KMS key for the account is * used.
*/ inline EncryptionConfiguration& WithCmkArn(const char* value) { SetCmkArn(value); return *this;} private: bool m_encrypted; bool m_encryptedHasBeenSet = false; Aws::String m_cmkArn; bool m_cmkArnHasBeenSet = false; }; } // namespace Model } // namespace DLM } // namespace Aws