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

Parameter information for key material import using TR-34 * standard.

See Also:

AWS * API Reference

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

The KeyARN of the certificate chain that signs the signing key * certificate during TR-34 key import.

*/ inline const Aws::String& GetCertificateAuthorityPublicKeyIdentifier() const{ return m_certificateAuthorityPublicKeyIdentifier; } /** *

The KeyARN of the certificate chain that signs the signing key * certificate during TR-34 key import.

*/ inline bool CertificateAuthorityPublicKeyIdentifierHasBeenSet() const { return m_certificateAuthorityPublicKeyIdentifierHasBeenSet; } /** *

The KeyARN of the certificate chain that signs the signing key * certificate during TR-34 key import.

*/ inline void SetCertificateAuthorityPublicKeyIdentifier(const Aws::String& value) { m_certificateAuthorityPublicKeyIdentifierHasBeenSet = true; m_certificateAuthorityPublicKeyIdentifier = value; } /** *

The KeyARN of the certificate chain that signs the signing key * certificate during TR-34 key import.

*/ inline void SetCertificateAuthorityPublicKeyIdentifier(Aws::String&& value) { m_certificateAuthorityPublicKeyIdentifierHasBeenSet = true; m_certificateAuthorityPublicKeyIdentifier = std::move(value); } /** *

The KeyARN of the certificate chain that signs the signing key * certificate during TR-34 key import.

*/ inline void SetCertificateAuthorityPublicKeyIdentifier(const char* value) { m_certificateAuthorityPublicKeyIdentifierHasBeenSet = true; m_certificateAuthorityPublicKeyIdentifier.assign(value); } /** *

The KeyARN of the certificate chain that signs the signing key * certificate during TR-34 key import.

*/ inline ImportTr34KeyBlock& WithCertificateAuthorityPublicKeyIdentifier(const Aws::String& value) { SetCertificateAuthorityPublicKeyIdentifier(value); return *this;} /** *

The KeyARN of the certificate chain that signs the signing key * certificate during TR-34 key import.

*/ inline ImportTr34KeyBlock& WithCertificateAuthorityPublicKeyIdentifier(Aws::String&& value) { SetCertificateAuthorityPublicKeyIdentifier(std::move(value)); return *this;} /** *

The KeyARN of the certificate chain that signs the signing key * certificate during TR-34 key import.

*/ inline ImportTr34KeyBlock& WithCertificateAuthorityPublicKeyIdentifier(const char* value) { SetCertificateAuthorityPublicKeyIdentifier(value); return *this;} /** *

The import token that initiates key import into Amazon Web Services Payment * Cryptography. It expires after 7 days. You can use the same import token to * import multiple keys to the same service account.

*/ inline const Aws::String& GetImportToken() const{ return m_importToken; } /** *

The import token that initiates key import into Amazon Web Services Payment * Cryptography. It expires after 7 days. You can use the same import token to * import multiple keys to the same service account.

*/ inline bool ImportTokenHasBeenSet() const { return m_importTokenHasBeenSet; } /** *

The import token that initiates key import into Amazon Web Services Payment * Cryptography. It expires after 7 days. You can use the same import token to * import multiple keys to the same service account.

*/ inline void SetImportToken(const Aws::String& value) { m_importTokenHasBeenSet = true; m_importToken = value; } /** *

The import token that initiates key import into Amazon Web Services Payment * Cryptography. It expires after 7 days. You can use the same import token to * import multiple keys to the same service account.

*/ inline void SetImportToken(Aws::String&& value) { m_importTokenHasBeenSet = true; m_importToken = std::move(value); } /** *

The import token that initiates key import into Amazon Web Services Payment * Cryptography. It expires after 7 days. You can use the same import token to * import multiple keys to the same service account.

*/ inline void SetImportToken(const char* value) { m_importTokenHasBeenSet = true; m_importToken.assign(value); } /** *

The import token that initiates key import into Amazon Web Services Payment * Cryptography. It expires after 7 days. You can use the same import token to * import multiple keys to the same service account.

*/ inline ImportTr34KeyBlock& WithImportToken(const Aws::String& value) { SetImportToken(value); return *this;} /** *

The import token that initiates key import into Amazon Web Services Payment * Cryptography. It expires after 7 days. You can use the same import token to * import multiple keys to the same service account.

*/ inline ImportTr34KeyBlock& WithImportToken(Aws::String&& value) { SetImportToken(std::move(value)); return *this;} /** *

The import token that initiates key import into Amazon Web Services Payment * Cryptography. It expires after 7 days. You can use the same import token to * import multiple keys to the same service account.

*/ inline ImportTr34KeyBlock& WithImportToken(const char* value) { SetImportToken(value); return *this;} /** *

The key block format to use during key import. The only value allowed is * X9_TR34_2012.

*/ inline const Tr34KeyBlockFormat& GetKeyBlockFormat() const{ return m_keyBlockFormat; } /** *

The key block format to use during key import. The only value allowed is * X9_TR34_2012.

*/ inline bool KeyBlockFormatHasBeenSet() const { return m_keyBlockFormatHasBeenSet; } /** *

The key block format to use during key import. The only value allowed is * X9_TR34_2012.

*/ inline void SetKeyBlockFormat(const Tr34KeyBlockFormat& value) { m_keyBlockFormatHasBeenSet = true; m_keyBlockFormat = value; } /** *

The key block format to use during key import. The only value allowed is * X9_TR34_2012.

*/ inline void SetKeyBlockFormat(Tr34KeyBlockFormat&& value) { m_keyBlockFormatHasBeenSet = true; m_keyBlockFormat = std::move(value); } /** *

The key block format to use during key import. The only value allowed is * X9_TR34_2012.

*/ inline ImportTr34KeyBlock& WithKeyBlockFormat(const Tr34KeyBlockFormat& value) { SetKeyBlockFormat(value); return *this;} /** *

The key block format to use during key import. The only value allowed is * X9_TR34_2012.

*/ inline ImportTr34KeyBlock& WithKeyBlockFormat(Tr34KeyBlockFormat&& value) { SetKeyBlockFormat(std::move(value)); return *this;} /** *

A random number value that is unique to the TR-34 key block generated using 2 * pass. The operation will fail, if a random nonce value is not provided for a * TR-34 key block generated using 2 pass.

*/ inline const Aws::String& GetRandomNonce() const{ return m_randomNonce; } /** *

A random number value that is unique to the TR-34 key block generated using 2 * pass. The operation will fail, if a random nonce value is not provided for a * TR-34 key block generated using 2 pass.

*/ inline bool RandomNonceHasBeenSet() const { return m_randomNonceHasBeenSet; } /** *

A random number value that is unique to the TR-34 key block generated using 2 * pass. The operation will fail, if a random nonce value is not provided for a * TR-34 key block generated using 2 pass.

*/ inline void SetRandomNonce(const Aws::String& value) { m_randomNonceHasBeenSet = true; m_randomNonce = value; } /** *

A random number value that is unique to the TR-34 key block generated using 2 * pass. The operation will fail, if a random nonce value is not provided for a * TR-34 key block generated using 2 pass.

*/ inline void SetRandomNonce(Aws::String&& value) { m_randomNonceHasBeenSet = true; m_randomNonce = std::move(value); } /** *

A random number value that is unique to the TR-34 key block generated using 2 * pass. The operation will fail, if a random nonce value is not provided for a * TR-34 key block generated using 2 pass.

*/ inline void SetRandomNonce(const char* value) { m_randomNonceHasBeenSet = true; m_randomNonce.assign(value); } /** *

A random number value that is unique to the TR-34 key block generated using 2 * pass. The operation will fail, if a random nonce value is not provided for a * TR-34 key block generated using 2 pass.

*/ inline ImportTr34KeyBlock& WithRandomNonce(const Aws::String& value) { SetRandomNonce(value); return *this;} /** *

A random number value that is unique to the TR-34 key block generated using 2 * pass. The operation will fail, if a random nonce value is not provided for a * TR-34 key block generated using 2 pass.

*/ inline ImportTr34KeyBlock& WithRandomNonce(Aws::String&& value) { SetRandomNonce(std::move(value)); return *this;} /** *

A random number value that is unique to the TR-34 key block generated using 2 * pass. The operation will fail, if a random nonce value is not provided for a * TR-34 key block generated using 2 pass.

*/ inline ImportTr34KeyBlock& WithRandomNonce(const char* value) { SetRandomNonce(value); return *this;} /** *

The public key component in PEM certificate format of the private key that * signs the KDH TR-34 wrapped key block.

*/ inline const Aws::String& GetSigningKeyCertificate() const{ return m_signingKeyCertificate; } /** *

The public key component in PEM certificate format of the private key that * signs the KDH TR-34 wrapped key block.

*/ inline bool SigningKeyCertificateHasBeenSet() const { return m_signingKeyCertificateHasBeenSet; } /** *

The public key component in PEM certificate format of the private key that * signs the KDH TR-34 wrapped key block.

*/ inline void SetSigningKeyCertificate(const Aws::String& value) { m_signingKeyCertificateHasBeenSet = true; m_signingKeyCertificate = value; } /** *

The public key component in PEM certificate format of the private key that * signs the KDH TR-34 wrapped key block.

*/ inline void SetSigningKeyCertificate(Aws::String&& value) { m_signingKeyCertificateHasBeenSet = true; m_signingKeyCertificate = std::move(value); } /** *

The public key component in PEM certificate format of the private key that * signs the KDH TR-34 wrapped key block.

*/ inline void SetSigningKeyCertificate(const char* value) { m_signingKeyCertificateHasBeenSet = true; m_signingKeyCertificate.assign(value); } /** *

The public key component in PEM certificate format of the private key that * signs the KDH TR-34 wrapped key block.

*/ inline ImportTr34KeyBlock& WithSigningKeyCertificate(const Aws::String& value) { SetSigningKeyCertificate(value); return *this;} /** *

The public key component in PEM certificate format of the private key that * signs the KDH TR-34 wrapped key block.

*/ inline ImportTr34KeyBlock& WithSigningKeyCertificate(Aws::String&& value) { SetSigningKeyCertificate(std::move(value)); return *this;} /** *

The public key component in PEM certificate format of the private key that * signs the KDH TR-34 wrapped key block.

*/ inline ImportTr34KeyBlock& WithSigningKeyCertificate(const char* value) { SetSigningKeyCertificate(value); return *this;} /** *

The TR-34 wrapped key block to import.

*/ inline const Aws::String& GetWrappedKeyBlock() const{ return m_wrappedKeyBlock; } /** *

The TR-34 wrapped key block to import.

*/ inline bool WrappedKeyBlockHasBeenSet() const { return m_wrappedKeyBlockHasBeenSet; } /** *

The TR-34 wrapped key block to import.

*/ inline void SetWrappedKeyBlock(const Aws::String& value) { m_wrappedKeyBlockHasBeenSet = true; m_wrappedKeyBlock = value; } /** *

The TR-34 wrapped key block to import.

*/ inline void SetWrappedKeyBlock(Aws::String&& value) { m_wrappedKeyBlockHasBeenSet = true; m_wrappedKeyBlock = std::move(value); } /** *

The TR-34 wrapped key block to import.

*/ inline void SetWrappedKeyBlock(const char* value) { m_wrappedKeyBlockHasBeenSet = true; m_wrappedKeyBlock.assign(value); } /** *

The TR-34 wrapped key block to import.

*/ inline ImportTr34KeyBlock& WithWrappedKeyBlock(const Aws::String& value) { SetWrappedKeyBlock(value); return *this;} /** *

The TR-34 wrapped key block to import.

*/ inline ImportTr34KeyBlock& WithWrappedKeyBlock(Aws::String&& value) { SetWrappedKeyBlock(std::move(value)); return *this;} /** *

The TR-34 wrapped key block to import.

*/ inline ImportTr34KeyBlock& WithWrappedKeyBlock(const char* value) { SetWrappedKeyBlock(value); return *this;} private: Aws::String m_certificateAuthorityPublicKeyIdentifier; bool m_certificateAuthorityPublicKeyIdentifierHasBeenSet = false; Aws::String m_importToken; bool m_importTokenHasBeenSet = false; Tr34KeyBlockFormat m_keyBlockFormat; bool m_keyBlockFormatHasBeenSet = false; Aws::String m_randomNonce; bool m_randomNonceHasBeenSet = false; Aws::String m_signingKeyCertificate; bool m_signingKeyCertificateHasBeenSet = false; Aws::String m_wrappedKeyBlock; bool m_wrappedKeyBlockHasBeenSet = false; }; } // namespace Model } // namespace PaymentCryptography } // namespace Aws