AWS SDK for C++

AWS SDK for C++ Version 1.11.854

Loading...
Searching...
No Matches
SessionKeyDerivation.h
1
6#pragma once
7#include <aws/payment-cryptography-data/PaymentCryptographyData_EXPORTS.h>
8#include <aws/payment-cryptography-data/model/SessionKeyAmex.h>
9#include <aws/payment-cryptography-data/model/SessionKeyEmv2000.h>
10#include <aws/payment-cryptography-data/model/SessionKeyEmvCommon.h>
11#include <aws/payment-cryptography-data/model/SessionKeyMastercard.h>
12#include <aws/payment-cryptography-data/model/SessionKeyUnionPay.h>
13#include <aws/payment-cryptography-data/model/SessionKeyVisa.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace PaymentCryptographyData {
25namespace Model {
26
34 public:
35 AWS_PAYMENTCRYPTOGRAPHYDATA_API SessionKeyDerivation() = default;
36 AWS_PAYMENTCRYPTOGRAPHYDATA_API SessionKeyDerivation(Aws::Utils::Json::JsonView jsonValue);
37 AWS_PAYMENTCRYPTOGRAPHYDATA_API SessionKeyDerivation& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
45 inline const SessionKeyEmvCommon& GetEmvCommon() const { return m_emvCommon; }
46 inline bool EmvCommonHasBeenSet() const { return m_emvCommonHasBeenSet; }
47 template <typename EmvCommonT = SessionKeyEmvCommon>
48 void SetEmvCommon(EmvCommonT&& value) {
49 m_emvCommonHasBeenSet = true;
50 m_emvCommon = std::forward<EmvCommonT>(value);
51 }
52 template <typename EmvCommonT = SessionKeyEmvCommon>
53 SessionKeyDerivation& WithEmvCommon(EmvCommonT&& value) {
54 SetEmvCommon(std::forward<EmvCommonT>(value));
55 return *this;
56 }
58
60
64 inline const SessionKeyMastercard& GetMastercard() const { return m_mastercard; }
65 inline bool MastercardHasBeenSet() const { return m_mastercardHasBeenSet; }
66 template <typename MastercardT = SessionKeyMastercard>
67 void SetMastercard(MastercardT&& value) {
68 m_mastercardHasBeenSet = true;
69 m_mastercard = std::forward<MastercardT>(value);
70 }
71 template <typename MastercardT = SessionKeyMastercard>
72 SessionKeyDerivation& WithMastercard(MastercardT&& value) {
73 SetMastercard(std::forward<MastercardT>(value));
74 return *this;
75 }
77
79
83 inline const SessionKeyEmv2000& GetEmv2000() const { return m_emv2000; }
84 inline bool Emv2000HasBeenSet() const { return m_emv2000HasBeenSet; }
85 template <typename Emv2000T = SessionKeyEmv2000>
86 void SetEmv2000(Emv2000T&& value) {
87 m_emv2000HasBeenSet = true;
88 m_emv2000 = std::forward<Emv2000T>(value);
89 }
90 template <typename Emv2000T = SessionKeyEmv2000>
91 SessionKeyDerivation& WithEmv2000(Emv2000T&& value) {
92 SetEmv2000(std::forward<Emv2000T>(value));
93 return *this;
94 }
96
98
102 inline const SessionKeyAmex& GetAmex() const { return m_amex; }
103 inline bool AmexHasBeenSet() const { return m_amexHasBeenSet; }
104 template <typename AmexT = SessionKeyAmex>
105 void SetAmex(AmexT&& value) {
106 m_amexHasBeenSet = true;
107 m_amex = std::forward<AmexT>(value);
108 }
109 template <typename AmexT = SessionKeyAmex>
111 SetAmex(std::forward<AmexT>(value));
112 return *this;
113 }
115
117
121 inline const SessionKeyVisa& GetVisa() const { return m_visa; }
122 inline bool VisaHasBeenSet() const { return m_visaHasBeenSet; }
123 template <typename VisaT = SessionKeyVisa>
124 void SetVisa(VisaT&& value) {
125 m_visaHasBeenSet = true;
126 m_visa = std::forward<VisaT>(value);
127 }
128 template <typename VisaT = SessionKeyVisa>
130 SetVisa(std::forward<VisaT>(value));
131 return *this;
132 }
134
136
140 inline const SessionKeyUnionPay& GetUnionPay() const { return m_unionPay; }
141 inline bool UnionPayHasBeenSet() const { return m_unionPayHasBeenSet; }
142 template <typename UnionPayT = SessionKeyUnionPay>
143 void SetUnionPay(UnionPayT&& value) {
144 m_unionPayHasBeenSet = true;
145 m_unionPay = std::forward<UnionPayT>(value);
146 }
147 template <typename UnionPayT = SessionKeyUnionPay>
148 SessionKeyDerivation& WithUnionPay(UnionPayT&& value) {
149 SetUnionPay(std::forward<UnionPayT>(value));
150 return *this;
151 }
153 private:
154 SessionKeyEmvCommon m_emvCommon;
155
156 SessionKeyMastercard m_mastercard;
157
158 SessionKeyEmv2000 m_emv2000;
159
160 SessionKeyAmex m_amex;
161
162 SessionKeyVisa m_visa;
163
164 SessionKeyUnionPay m_unionPay;
165 bool m_emvCommonHasBeenSet = false;
166 bool m_mastercardHasBeenSet = false;
167 bool m_emv2000HasBeenSet = false;
168 bool m_amexHasBeenSet = false;
169 bool m_visaHasBeenSet = false;
170 bool m_unionPayHasBeenSet = false;
171};
172
173} // namespace Model
174} // namespace PaymentCryptographyData
175} // namespace Aws
AWS_PAYMENTCRYPTOGRAPHYDATA_API SessionKeyDerivation(Aws::Utils::Json::JsonView jsonValue)
AWS_PAYMENTCRYPTOGRAPHYDATA_API SessionKeyDerivation & operator=(Aws::Utils::Json::JsonView jsonValue)
SessionKeyDerivation & WithEmvCommon(EmvCommonT &&value)
SessionKeyDerivation & WithUnionPay(UnionPayT &&value)
AWS_PAYMENTCRYPTOGRAPHYDATA_API SessionKeyDerivation()=default
AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const
SessionKeyDerivation & WithMastercard(MastercardT &&value)
Aws::Utils::Json::JsonValue JsonValue