/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace PaymentCryptography { namespace Model { class GetParametersForExportResult { public: AWS_PAYMENTCRYPTOGRAPHY_API GetParametersForExportResult(); AWS_PAYMENTCRYPTOGRAPHY_API GetParametersForExportResult(const Aws::AmazonWebServiceResult& result); AWS_PAYMENTCRYPTOGRAPHY_API GetParametersForExportResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The export token to initiate key export from Amazon Web Services Payment * Cryptography. The export token expires after 7 days. You can use the same export * token to export multiple keys from the same service account.

*/ inline const Aws::String& GetExportToken() const{ return m_exportToken; } /** *

The export token to initiate key export from Amazon Web Services Payment * Cryptography. The export token expires after 7 days. You can use the same export * token to export multiple keys from the same service account.

*/ inline void SetExportToken(const Aws::String& value) { m_exportToken = value; } /** *

The export token to initiate key export from Amazon Web Services Payment * Cryptography. The export token expires after 7 days. You can use the same export * token to export multiple keys from the same service account.

*/ inline void SetExportToken(Aws::String&& value) { m_exportToken = std::move(value); } /** *

The export token to initiate key export from Amazon Web Services Payment * Cryptography. The export token expires after 7 days. You can use the same export * token to export multiple keys from the same service account.

*/ inline void SetExportToken(const char* value) { m_exportToken.assign(value); } /** *

The export token to initiate key export from Amazon Web Services Payment * Cryptography. The export token expires after 7 days. You can use the same export * token to export multiple keys from the same service account.

*/ inline GetParametersForExportResult& WithExportToken(const Aws::String& value) { SetExportToken(value); return *this;} /** *

The export token to initiate key export from Amazon Web Services Payment * Cryptography. The export token expires after 7 days. You can use the same export * token to export multiple keys from the same service account.

*/ inline GetParametersForExportResult& WithExportToken(Aws::String&& value) { SetExportToken(std::move(value)); return *this;} /** *

The export token to initiate key export from Amazon Web Services Payment * Cryptography. The export token expires after 7 days. You can use the same export * token to export multiple keys from the same service account.

*/ inline GetParametersForExportResult& WithExportToken(const char* value) { SetExportToken(value); return *this;} /** *

The validity period of the export token.

*/ inline const Aws::Utils::DateTime& GetParametersValidUntilTimestamp() const{ return m_parametersValidUntilTimestamp; } /** *

The validity period of the export token.

*/ inline void SetParametersValidUntilTimestamp(const Aws::Utils::DateTime& value) { m_parametersValidUntilTimestamp = value; } /** *

The validity period of the export token.

*/ inline void SetParametersValidUntilTimestamp(Aws::Utils::DateTime&& value) { m_parametersValidUntilTimestamp = std::move(value); } /** *

The validity period of the export token.

*/ inline GetParametersForExportResult& WithParametersValidUntilTimestamp(const Aws::Utils::DateTime& value) { SetParametersValidUntilTimestamp(value); return *this;} /** *

The validity period of the export token.

*/ inline GetParametersForExportResult& WithParametersValidUntilTimestamp(Aws::Utils::DateTime&& value) { SetParametersValidUntilTimestamp(std::move(value)); return *this;} /** *

The algorithm of the signing key certificate for use in TR-34 key block * generation. RSA_2048 is the only signing key algorithm allowed.

*/ inline const KeyAlgorithm& GetSigningKeyAlgorithm() const{ return m_signingKeyAlgorithm; } /** *

The algorithm of the signing key certificate for use in TR-34 key block * generation. RSA_2048 is the only signing key algorithm allowed.

*/ inline void SetSigningKeyAlgorithm(const KeyAlgorithm& value) { m_signingKeyAlgorithm = value; } /** *

The algorithm of the signing key certificate for use in TR-34 key block * generation. RSA_2048 is the only signing key algorithm allowed.

*/ inline void SetSigningKeyAlgorithm(KeyAlgorithm&& value) { m_signingKeyAlgorithm = std::move(value); } /** *

The algorithm of the signing key certificate for use in TR-34 key block * generation. RSA_2048 is the only signing key algorithm allowed.

*/ inline GetParametersForExportResult& WithSigningKeyAlgorithm(const KeyAlgorithm& value) { SetSigningKeyAlgorithm(value); return *this;} /** *

The algorithm of the signing key certificate for use in TR-34 key block * generation. RSA_2048 is the only signing key algorithm allowed.

*/ inline GetParametersForExportResult& WithSigningKeyAlgorithm(KeyAlgorithm&& value) { SetSigningKeyAlgorithm(std::move(value)); return *this;} /** *

The signing key certificate of the public key for signature within the TR-34 * key block cryptogram. The certificate expires after 7 days.

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

The signing key certificate of the public key for signature within the TR-34 * key block cryptogram. The certificate expires after 7 days.

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

The signing key certificate of the public key for signature within the TR-34 * key block cryptogram. The certificate expires after 7 days.

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

The signing key certificate of the public key for signature within the TR-34 * key block cryptogram. The certificate expires after 7 days.

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

The signing key certificate of the public key for signature within the TR-34 * key block cryptogram. The certificate expires after 7 days.

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

The signing key certificate of the public key for signature within the TR-34 * key block cryptogram. The certificate expires after 7 days.

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

The signing key certificate of the public key for signature within the TR-34 * key block cryptogram. The certificate expires after 7 days.

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

The certificate chain that signed the signing key certificate. This is the * root certificate authority (CA) within your service account.

*/ inline const Aws::String& GetSigningKeyCertificateChain() const{ return m_signingKeyCertificateChain; } /** *

The certificate chain that signed the signing key certificate. This is the * root certificate authority (CA) within your service account.

*/ inline void SetSigningKeyCertificateChain(const Aws::String& value) { m_signingKeyCertificateChain = value; } /** *

The certificate chain that signed the signing key certificate. This is the * root certificate authority (CA) within your service account.

*/ inline void SetSigningKeyCertificateChain(Aws::String&& value) { m_signingKeyCertificateChain = std::move(value); } /** *

The certificate chain that signed the signing key certificate. This is the * root certificate authority (CA) within your service account.

*/ inline void SetSigningKeyCertificateChain(const char* value) { m_signingKeyCertificateChain.assign(value); } /** *

The certificate chain that signed the signing key certificate. This is the * root certificate authority (CA) within your service account.

*/ inline GetParametersForExportResult& WithSigningKeyCertificateChain(const Aws::String& value) { SetSigningKeyCertificateChain(value); return *this;} /** *

The certificate chain that signed the signing key certificate. This is the * root certificate authority (CA) within your service account.

*/ inline GetParametersForExportResult& WithSigningKeyCertificateChain(Aws::String&& value) { SetSigningKeyCertificateChain(std::move(value)); return *this;} /** *

The certificate chain that signed the signing key certificate. This is the * root certificate authority (CA) within your service account.

*/ inline GetParametersForExportResult& WithSigningKeyCertificateChain(const char* value) { SetSigningKeyCertificateChain(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetParametersForExportResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetParametersForExportResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetParametersForExportResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_exportToken; Aws::Utils::DateTime m_parametersValidUntilTimestamp; KeyAlgorithm m_signingKeyAlgorithm; Aws::String m_signingKeyCertificate; Aws::String m_signingKeyCertificateChain; Aws::String m_requestId; }; } // namespace Model } // namespace PaymentCryptography } // namespace Aws