/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Metadata about an Amazon Web Services Payment Cryptography key.See
* Also:
AWS
* API Reference
Specifies whether the key is enabled.
*/ inline bool GetEnabled() const{ return m_enabled; } /** *Specifies whether the key is enabled.
*/ inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } /** *Specifies whether the key is enabled.
*/ inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } /** *Specifies whether the key is enabled.
*/ inline KeySummary& WithEnabled(bool value) { SetEnabled(value); return *this;} /** *Specifies whether the key is exportable. This data is immutable after the key * is created.
*/ inline bool GetExportable() const{ return m_exportable; } /** *Specifies whether the key is exportable. This data is immutable after the key * is created.
*/ inline bool ExportableHasBeenSet() const { return m_exportableHasBeenSet; } /** *Specifies whether the key is exportable. This data is immutable after the key * is created.
*/ inline void SetExportable(bool value) { m_exportableHasBeenSet = true; m_exportable = value; } /** *Specifies whether the key is exportable. This data is immutable after the key * is created.
*/ inline KeySummary& WithExportable(bool value) { SetExportable(value); return *this;} /** *The Amazon Resource Name (ARN) of the key.
*/ inline const Aws::String& GetKeyArn() const{ return m_keyArn; } /** *The Amazon Resource Name (ARN) of the key.
*/ inline bool KeyArnHasBeenSet() const { return m_keyArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the key.
*/ inline void SetKeyArn(const Aws::String& value) { m_keyArnHasBeenSet = true; m_keyArn = value; } /** *The Amazon Resource Name (ARN) of the key.
*/ inline void SetKeyArn(Aws::String&& value) { m_keyArnHasBeenSet = true; m_keyArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the key.
*/ inline void SetKeyArn(const char* value) { m_keyArnHasBeenSet = true; m_keyArn.assign(value); } /** *The Amazon Resource Name (ARN) of the key.
*/ inline KeySummary& WithKeyArn(const Aws::String& value) { SetKeyArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the key.
*/ inline KeySummary& WithKeyArn(Aws::String&& value) { SetKeyArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the key.
*/ inline KeySummary& WithKeyArn(const char* value) { SetKeyArn(value); return *this;} /** *The role of the key, the algorithm it supports, and the cryptographic * operations allowed with the key. This data is immutable after the key is * created.
*/ inline const KeyAttributes& GetKeyAttributes() const{ return m_keyAttributes; } /** *The role of the key, the algorithm it supports, and the cryptographic * operations allowed with the key. This data is immutable after the key is * created.
*/ inline bool KeyAttributesHasBeenSet() const { return m_keyAttributesHasBeenSet; } /** *The role of the key, the algorithm it supports, and the cryptographic * operations allowed with the key. This data is immutable after the key is * created.
*/ inline void SetKeyAttributes(const KeyAttributes& value) { m_keyAttributesHasBeenSet = true; m_keyAttributes = value; } /** *The role of the key, the algorithm it supports, and the cryptographic * operations allowed with the key. This data is immutable after the key is * created.
*/ inline void SetKeyAttributes(KeyAttributes&& value) { m_keyAttributesHasBeenSet = true; m_keyAttributes = std::move(value); } /** *The role of the key, the algorithm it supports, and the cryptographic * operations allowed with the key. This data is immutable after the key is * created.
*/ inline KeySummary& WithKeyAttributes(const KeyAttributes& value) { SetKeyAttributes(value); return *this;} /** *The role of the key, the algorithm it supports, and the cryptographic * operations allowed with the key. This data is immutable after the key is * created.
*/ inline KeySummary& WithKeyAttributes(KeyAttributes&& value) { SetKeyAttributes(std::move(value)); return *this;} /** *The key check value (KCV) is used to check if all parties holding a given key * have the same key or to detect that a key has changed. Amazon Web Services * Payment Cryptography calculates the KCV by using standard algorithms, typically * by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to * the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
*/ inline const Aws::String& GetKeyCheckValue() const{ return m_keyCheckValue; } /** *The key check value (KCV) is used to check if all parties holding a given key * have the same key or to detect that a key has changed. Amazon Web Services * Payment Cryptography calculates the KCV by using standard algorithms, typically * by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to * the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
*/ inline bool KeyCheckValueHasBeenSet() const { return m_keyCheckValueHasBeenSet; } /** *The key check value (KCV) is used to check if all parties holding a given key * have the same key or to detect that a key has changed. Amazon Web Services * Payment Cryptography calculates the KCV by using standard algorithms, typically * by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to * the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
*/ inline void SetKeyCheckValue(const Aws::String& value) { m_keyCheckValueHasBeenSet = true; m_keyCheckValue = value; } /** *The key check value (KCV) is used to check if all parties holding a given key * have the same key or to detect that a key has changed. Amazon Web Services * Payment Cryptography calculates the KCV by using standard algorithms, typically * by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to * the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
*/ inline void SetKeyCheckValue(Aws::String&& value) { m_keyCheckValueHasBeenSet = true; m_keyCheckValue = std::move(value); } /** *The key check value (KCV) is used to check if all parties holding a given key * have the same key or to detect that a key has changed. Amazon Web Services * Payment Cryptography calculates the KCV by using standard algorithms, typically * by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to * the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
*/ inline void SetKeyCheckValue(const char* value) { m_keyCheckValueHasBeenSet = true; m_keyCheckValue.assign(value); } /** *The key check value (KCV) is used to check if all parties holding a given key * have the same key or to detect that a key has changed. Amazon Web Services * Payment Cryptography calculates the KCV by using standard algorithms, typically * by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to * the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
*/ inline KeySummary& WithKeyCheckValue(const Aws::String& value) { SetKeyCheckValue(value); return *this;} /** *The key check value (KCV) is used to check if all parties holding a given key * have the same key or to detect that a key has changed. Amazon Web Services * Payment Cryptography calculates the KCV by using standard algorithms, typically * by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to * the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
*/ inline KeySummary& WithKeyCheckValue(Aws::String&& value) { SetKeyCheckValue(std::move(value)); return *this;} /** *The key check value (KCV) is used to check if all parties holding a given key * have the same key or to detect that a key has changed. Amazon Web Services * Payment Cryptography calculates the KCV by using standard algorithms, typically * by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to * the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
*/ inline KeySummary& WithKeyCheckValue(const char* value) { SetKeyCheckValue(value); return *this;} /** *The state of an Amazon Web Services Payment Cryptography that is being * created or deleted.
*/ inline const KeyState& GetKeyState() const{ return m_keyState; } /** *The state of an Amazon Web Services Payment Cryptography that is being * created or deleted.
*/ inline bool KeyStateHasBeenSet() const { return m_keyStateHasBeenSet; } /** *The state of an Amazon Web Services Payment Cryptography that is being * created or deleted.
*/ inline void SetKeyState(const KeyState& value) { m_keyStateHasBeenSet = true; m_keyState = value; } /** *The state of an Amazon Web Services Payment Cryptography that is being * created or deleted.
*/ inline void SetKeyState(KeyState&& value) { m_keyStateHasBeenSet = true; m_keyState = std::move(value); } /** *The state of an Amazon Web Services Payment Cryptography that is being * created or deleted.
*/ inline KeySummary& WithKeyState(const KeyState& value) { SetKeyState(value); return *this;} /** *The state of an Amazon Web Services Payment Cryptography that is being * created or deleted.
*/ inline KeySummary& WithKeyState(KeyState&& value) { SetKeyState(std::move(value)); return *this;} private: bool m_enabled; bool m_enabledHasBeenSet = false; bool m_exportable; bool m_exportableHasBeenSet = false; Aws::String m_keyArn; bool m_keyArnHasBeenSet = false; KeyAttributes m_keyAttributes; bool m_keyAttributesHasBeenSet = false; Aws::String m_keyCheckValue; bool m_keyCheckValueHasBeenSet = false; KeyState m_keyState; bool m_keyStateHasBeenSet = false; }; } // namespace Model } // namespace PaymentCryptography } // namespace Aws