AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
ExportKeyMaterial.h
1
6#pragma once
7#include <aws/payment-cryptography/PaymentCryptography_EXPORTS.h>
8#include <aws/payment-cryptography/model/ExportAs2805KeyCryptogram.h>
9#include <aws/payment-cryptography/model/ExportDiffieHellmanTr31KeyBlock.h>
10#include <aws/payment-cryptography/model/ExportKeyCryptogram.h>
11#include <aws/payment-cryptography/model/ExportTr31KeyBlock.h>
12#include <aws/payment-cryptography/model/ExportTr34KeyBlock.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace PaymentCryptography {
24namespace Model {
25
34 public:
35 AWS_PAYMENTCRYPTOGRAPHY_API ExportKeyMaterial() = default;
36 AWS_PAYMENTCRYPTOGRAPHY_API ExportKeyMaterial(Aws::Utils::Json::JsonView jsonValue);
37 AWS_PAYMENTCRYPTOGRAPHY_API ExportKeyMaterial& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_PAYMENTCRYPTOGRAPHY_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
45 inline const ExportTr31KeyBlock& GetTr31KeyBlock() const { return m_tr31KeyBlock; }
46 inline bool Tr31KeyBlockHasBeenSet() const { return m_tr31KeyBlockHasBeenSet; }
47 template <typename Tr31KeyBlockT = ExportTr31KeyBlock>
48 void SetTr31KeyBlock(Tr31KeyBlockT&& value) {
49 m_tr31KeyBlockHasBeenSet = true;
50 m_tr31KeyBlock = std::forward<Tr31KeyBlockT>(value);
51 }
52 template <typename Tr31KeyBlockT = ExportTr31KeyBlock>
53 ExportKeyMaterial& WithTr31KeyBlock(Tr31KeyBlockT&& value) {
54 SetTr31KeyBlock(std::forward<Tr31KeyBlockT>(value));
55 return *this;
56 }
58
60
64 inline const ExportTr34KeyBlock& GetTr34KeyBlock() const { return m_tr34KeyBlock; }
65 inline bool Tr34KeyBlockHasBeenSet() const { return m_tr34KeyBlockHasBeenSet; }
66 template <typename Tr34KeyBlockT = ExportTr34KeyBlock>
67 void SetTr34KeyBlock(Tr34KeyBlockT&& value) {
68 m_tr34KeyBlockHasBeenSet = true;
69 m_tr34KeyBlock = std::forward<Tr34KeyBlockT>(value);
70 }
71 template <typename Tr34KeyBlockT = ExportTr34KeyBlock>
72 ExportKeyMaterial& WithTr34KeyBlock(Tr34KeyBlockT&& value) {
73 SetTr34KeyBlock(std::forward<Tr34KeyBlockT>(value));
74 return *this;
75 }
77
79
83 inline const ExportKeyCryptogram& GetKeyCryptogram() const { return m_keyCryptogram; }
84 inline bool KeyCryptogramHasBeenSet() const { return m_keyCryptogramHasBeenSet; }
85 template <typename KeyCryptogramT = ExportKeyCryptogram>
86 void SetKeyCryptogram(KeyCryptogramT&& value) {
87 m_keyCryptogramHasBeenSet = true;
88 m_keyCryptogram = std::forward<KeyCryptogramT>(value);
89 }
90 template <typename KeyCryptogramT = ExportKeyCryptogram>
91 ExportKeyMaterial& WithKeyCryptogram(KeyCryptogramT&& value) {
92 SetKeyCryptogram(std::forward<KeyCryptogramT>(value));
93 return *this;
94 }
96
98
102 inline const ExportDiffieHellmanTr31KeyBlock& GetDiffieHellmanTr31KeyBlock() const { return m_diffieHellmanTr31KeyBlock; }
103 inline bool DiffieHellmanTr31KeyBlockHasBeenSet() const { return m_diffieHellmanTr31KeyBlockHasBeenSet; }
104 template <typename DiffieHellmanTr31KeyBlockT = ExportDiffieHellmanTr31KeyBlock>
105 void SetDiffieHellmanTr31KeyBlock(DiffieHellmanTr31KeyBlockT&& value) {
106 m_diffieHellmanTr31KeyBlockHasBeenSet = true;
107 m_diffieHellmanTr31KeyBlock = std::forward<DiffieHellmanTr31KeyBlockT>(value);
108 }
109 template <typename DiffieHellmanTr31KeyBlockT = ExportDiffieHellmanTr31KeyBlock>
110 ExportKeyMaterial& WithDiffieHellmanTr31KeyBlock(DiffieHellmanTr31KeyBlockT&& value) {
111 SetDiffieHellmanTr31KeyBlock(std::forward<DiffieHellmanTr31KeyBlockT>(value));
112 return *this;
113 }
115
117
121 inline const ExportAs2805KeyCryptogram& GetAs2805KeyCryptogram() const { return m_as2805KeyCryptogram; }
122 inline bool As2805KeyCryptogramHasBeenSet() const { return m_as2805KeyCryptogramHasBeenSet; }
123 template <typename As2805KeyCryptogramT = ExportAs2805KeyCryptogram>
124 void SetAs2805KeyCryptogram(As2805KeyCryptogramT&& value) {
125 m_as2805KeyCryptogramHasBeenSet = true;
126 m_as2805KeyCryptogram = std::forward<As2805KeyCryptogramT>(value);
127 }
128 template <typename As2805KeyCryptogramT = ExportAs2805KeyCryptogram>
129 ExportKeyMaterial& WithAs2805KeyCryptogram(As2805KeyCryptogramT&& value) {
130 SetAs2805KeyCryptogram(std::forward<As2805KeyCryptogramT>(value));
131 return *this;
132 }
134 private:
135 ExportTr31KeyBlock m_tr31KeyBlock;
136
137 ExportTr34KeyBlock m_tr34KeyBlock;
138
139 ExportKeyCryptogram m_keyCryptogram;
140
141 ExportDiffieHellmanTr31KeyBlock m_diffieHellmanTr31KeyBlock;
142
143 ExportAs2805KeyCryptogram m_as2805KeyCryptogram;
144 bool m_tr31KeyBlockHasBeenSet = false;
145 bool m_tr34KeyBlockHasBeenSet = false;
146 bool m_keyCryptogramHasBeenSet = false;
147 bool m_diffieHellmanTr31KeyBlockHasBeenSet = false;
148 bool m_as2805KeyCryptogramHasBeenSet = false;
149};
150
151} // namespace Model
152} // namespace PaymentCryptography
153} // namespace Aws
const ExportDiffieHellmanTr31KeyBlock & GetDiffieHellmanTr31KeyBlock() const
AWS_PAYMENTCRYPTOGRAPHY_API ExportKeyMaterial & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_PAYMENTCRYPTOGRAPHY_API ExportKeyMaterial()=default
const ExportTr31KeyBlock & GetTr31KeyBlock() const
ExportKeyMaterial & WithTr34KeyBlock(Tr34KeyBlockT &&value)
ExportKeyMaterial & WithDiffieHellmanTr31KeyBlock(DiffieHellmanTr31KeyBlockT &&value)
AWS_PAYMENTCRYPTOGRAPHY_API ExportKeyMaterial(Aws::Utils::Json::JsonView jsonValue)
const ExportTr34KeyBlock & GetTr34KeyBlock() const
ExportKeyMaterial & WithKeyCryptogram(KeyCryptogramT &&value)
ExportKeyMaterial & WithTr31KeyBlock(Tr31KeyBlockT &&value)
AWS_PAYMENTCRYPTOGRAPHY_API Aws::Utils::Json::JsonValue Jsonize() const
const ExportAs2805KeyCryptogram & GetAs2805KeyCryptogram() const
const ExportKeyCryptogram & GetKeyCryptogram() const
void SetAs2805KeyCryptogram(As2805KeyCryptogramT &&value)
ExportKeyMaterial & WithAs2805KeyCryptogram(As2805KeyCryptogramT &&value)
void SetDiffieHellmanTr31KeyBlock(DiffieHellmanTr31KeyBlockT &&value)
Aws::Utils::Json::JsonValue JsonValue