7#include <aws/payment-cryptography/PaymentCryptography_EXPORTS.h>
8#include <aws/payment-cryptography/model/ImportAs2805KeyCryptogram.h>
9#include <aws/payment-cryptography/model/ImportDiffieHellmanTr31KeyBlock.h>
10#include <aws/payment-cryptography/model/ImportKeyCryptogram.h>
11#include <aws/payment-cryptography/model/ImportTr31KeyBlock.h>
12#include <aws/payment-cryptography/model/ImportTr34KeyBlock.h>
13#include <aws/payment-cryptography/model/RootCertificatePublicKey.h>
14#include <aws/payment-cryptography/model/TrustedCertificatePublicKey.h>
25namespace PaymentCryptography {
48 template <
typename RootCertificatePublicKeyT = RootCertificatePublicKey>
50 m_rootCertificatePublicKeyHasBeenSet =
true;
51 m_rootCertificatePublicKey = std::forward<RootCertificatePublicKeyT>(value);
53 template <
typename RootCertificatePublicKeyT = RootCertificatePublicKey>
66 template <
typename TrustedCertificatePublicKeyT = TrustedCertificatePublicKey>
68 m_trustedCertificatePublicKeyHasBeenSet =
true;
69 m_trustedCertificatePublicKey = std::forward<TrustedCertificatePublicKeyT>(value);
71 template <
typename TrustedCertificatePublicKeyT = TrustedCertificatePublicKey>
85 template <
typename Tr31KeyBlockT = ImportTr31KeyBlock>
87 m_tr31KeyBlockHasBeenSet =
true;
88 m_tr31KeyBlock = std::forward<Tr31KeyBlockT>(value);
90 template <
typename Tr31KeyBlockT = ImportTr31KeyBlock>
104 template <
typename Tr34KeyBlockT = ImportTr34KeyBlock>
106 m_tr34KeyBlockHasBeenSet =
true;
107 m_tr34KeyBlock = std::forward<Tr34KeyBlockT>(value);
109 template <
typename Tr34KeyBlockT = ImportTr34KeyBlock>
123 template <
typename KeyCryptogramT = ImportKeyCryptogram>
125 m_keyCryptogramHasBeenSet =
true;
126 m_keyCryptogram = std::forward<KeyCryptogramT>(value);
128 template <
typename KeyCryptogramT = ImportKeyCryptogram>
142 template <
typename DiffieHellmanTr31KeyBlockT = ImportDiffieHellmanTr31KeyBlock>
144 m_diffieHellmanTr31KeyBlockHasBeenSet =
true;
145 m_diffieHellmanTr31KeyBlock = std::forward<DiffieHellmanTr31KeyBlockT>(value);
147 template <
typename DiffieHellmanTr31KeyBlockT = ImportDiffieHellmanTr31KeyBlock>
161 template <
typename As2805KeyCryptogramT = ImportAs2805KeyCryptogram>
163 m_as2805KeyCryptogramHasBeenSet =
true;
164 m_as2805KeyCryptogram = std::forward<As2805KeyCryptogramT>(value);
166 template <
typename As2805KeyCryptogramT = ImportAs2805KeyCryptogram>
186 bool m_rootCertificatePublicKeyHasBeenSet =
false;
187 bool m_trustedCertificatePublicKeyHasBeenSet =
false;
188 bool m_tr31KeyBlockHasBeenSet =
false;
189 bool m_tr34KeyBlockHasBeenSet =
false;
190 bool m_keyCryptogramHasBeenSet =
false;
191 bool m_diffieHellmanTr31KeyBlockHasBeenSet =
false;
192 bool m_as2805KeyCryptogramHasBeenSet =
false;
AWS_PAYMENTCRYPTOGRAPHY_API ImportKeyMaterial(Aws::Utils::Json::JsonView jsonValue)
ImportKeyMaterial & WithAs2805KeyCryptogram(As2805KeyCryptogramT &&value)
ImportKeyMaterial & WithRootCertificatePublicKey(RootCertificatePublicKeyT &&value)
bool Tr34KeyBlockHasBeenSet() const
AWS_PAYMENTCRYPTOGRAPHY_API ImportKeyMaterial & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetDiffieHellmanTr31KeyBlock(DiffieHellmanTr31KeyBlockT &&value)
bool As2805KeyCryptogramHasBeenSet() const
bool RootCertificatePublicKeyHasBeenSet() const
bool TrustedCertificatePublicKeyHasBeenSet() const
void SetTrustedCertificatePublicKey(TrustedCertificatePublicKeyT &&value)
ImportKeyMaterial & WithKeyCryptogram(KeyCryptogramT &&value)
const ImportTr34KeyBlock & GetTr34KeyBlock() const
bool KeyCryptogramHasBeenSet() const
bool Tr31KeyBlockHasBeenSet() const
const ImportDiffieHellmanTr31KeyBlock & GetDiffieHellmanTr31KeyBlock() const
const TrustedCertificatePublicKey & GetTrustedCertificatePublicKey() const
bool DiffieHellmanTr31KeyBlockHasBeenSet() const
ImportKeyMaterial & WithTrustedCertificatePublicKey(TrustedCertificatePublicKeyT &&value)
void SetTr31KeyBlock(Tr31KeyBlockT &&value)
const ImportKeyCryptogram & GetKeyCryptogram() const
void SetKeyCryptogram(KeyCryptogramT &&value)
void SetAs2805KeyCryptogram(As2805KeyCryptogramT &&value)
const ImportTr31KeyBlock & GetTr31KeyBlock() const
AWS_PAYMENTCRYPTOGRAPHY_API Aws::Utils::Json::JsonValue Jsonize() const
const RootCertificatePublicKey & GetRootCertificatePublicKey() const
ImportKeyMaterial & WithTr34KeyBlock(Tr34KeyBlockT &&value)
void SetTr34KeyBlock(Tr34KeyBlockT &&value)
AWS_PAYMENTCRYPTOGRAPHY_API ImportKeyMaterial()=default
const ImportAs2805KeyCryptogram & GetAs2805KeyCryptogram() const
ImportKeyMaterial & WithTr31KeyBlock(Tr31KeyBlockT &&value)
void SetRootCertificatePublicKey(RootCertificatePublicKeyT &&value)
ImportKeyMaterial & WithDiffieHellmanTr31KeyBlock(DiffieHellmanTr31KeyBlockT &&value)
Aws::Utils::Json::JsonValue JsonValue