AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
MacAttributes.h
1
6#pragma once
7#include <aws/payment-cryptography-data/PaymentCryptographyData_EXPORTS.h>
8#include <aws/payment-cryptography-data/model/MacAlgorithm.h>
9#include <aws/payment-cryptography-data/model/MacAlgorithmDukpt.h>
10#include <aws/payment-cryptography-data/model/MacAlgorithmEmv.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace PaymentCryptographyData {
22namespace Model {
23
31 public:
32 AWS_PAYMENTCRYPTOGRAPHYDATA_API MacAttributes() = default;
33 AWS_PAYMENTCRYPTOGRAPHYDATA_API MacAttributes(Aws::Utils::Json::JsonView jsonValue);
34 AWS_PAYMENTCRYPTOGRAPHYDATA_API MacAttributes& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline MacAlgorithm GetAlgorithm() const { return m_algorithm; }
42 inline bool AlgorithmHasBeenSet() const { return m_algorithmHasBeenSet; }
43 inline void SetAlgorithm(MacAlgorithm value) {
44 m_algorithmHasBeenSet = true;
45 m_algorithm = value;
46 }
48 SetAlgorithm(value);
49 return *this;
50 }
52
54
58 inline const MacAlgorithmEmv& GetEmvMac() const { return m_emvMac; }
59 inline bool EmvMacHasBeenSet() const { return m_emvMacHasBeenSet; }
60 template <typename EmvMacT = MacAlgorithmEmv>
61 void SetEmvMac(EmvMacT&& value) {
62 m_emvMacHasBeenSet = true;
63 m_emvMac = std::forward<EmvMacT>(value);
64 }
65 template <typename EmvMacT = MacAlgorithmEmv>
66 MacAttributes& WithEmvMac(EmvMacT&& value) {
67 SetEmvMac(std::forward<EmvMacT>(value));
68 return *this;
69 }
71
73
77 inline const MacAlgorithmDukpt& GetDukptIso9797Algorithm1() const { return m_dukptIso9797Algorithm1; }
78 inline bool DukptIso9797Algorithm1HasBeenSet() const { return m_dukptIso9797Algorithm1HasBeenSet; }
79 template <typename DukptIso9797Algorithm1T = MacAlgorithmDukpt>
80 void SetDukptIso9797Algorithm1(DukptIso9797Algorithm1T&& value) {
81 m_dukptIso9797Algorithm1HasBeenSet = true;
82 m_dukptIso9797Algorithm1 = std::forward<DukptIso9797Algorithm1T>(value);
83 }
84 template <typename DukptIso9797Algorithm1T = MacAlgorithmDukpt>
85 MacAttributes& WithDukptIso9797Algorithm1(DukptIso9797Algorithm1T&& value) {
86 SetDukptIso9797Algorithm1(std::forward<DukptIso9797Algorithm1T>(value));
87 return *this;
88 }
90
92
96 inline const MacAlgorithmDukpt& GetDukptIso9797Algorithm3() const { return m_dukptIso9797Algorithm3; }
97 inline bool DukptIso9797Algorithm3HasBeenSet() const { return m_dukptIso9797Algorithm3HasBeenSet; }
98 template <typename DukptIso9797Algorithm3T = MacAlgorithmDukpt>
99 void SetDukptIso9797Algorithm3(DukptIso9797Algorithm3T&& value) {
100 m_dukptIso9797Algorithm3HasBeenSet = true;
101 m_dukptIso9797Algorithm3 = std::forward<DukptIso9797Algorithm3T>(value);
102 }
103 template <typename DukptIso9797Algorithm3T = MacAlgorithmDukpt>
104 MacAttributes& WithDukptIso9797Algorithm3(DukptIso9797Algorithm3T&& value) {
105 SetDukptIso9797Algorithm3(std::forward<DukptIso9797Algorithm3T>(value));
106 return *this;
107 }
109
111
115 inline const MacAlgorithmDukpt& GetDukptCmac() const { return m_dukptCmac; }
116 inline bool DukptCmacHasBeenSet() const { return m_dukptCmacHasBeenSet; }
117 template <typename DukptCmacT = MacAlgorithmDukpt>
118 void SetDukptCmac(DukptCmacT&& value) {
119 m_dukptCmacHasBeenSet = true;
120 m_dukptCmac = std::forward<DukptCmacT>(value);
121 }
122 template <typename DukptCmacT = MacAlgorithmDukpt>
123 MacAttributes& WithDukptCmac(DukptCmacT&& value) {
124 SetDukptCmac(std::forward<DukptCmacT>(value));
125 return *this;
126 }
128 private:
130
131 MacAlgorithmEmv m_emvMac;
132
133 MacAlgorithmDukpt m_dukptIso9797Algorithm1;
134
135 MacAlgorithmDukpt m_dukptIso9797Algorithm3;
136
137 MacAlgorithmDukpt m_dukptCmac;
138 bool m_algorithmHasBeenSet = false;
139 bool m_emvMacHasBeenSet = false;
140 bool m_dukptIso9797Algorithm1HasBeenSet = false;
141 bool m_dukptIso9797Algorithm3HasBeenSet = false;
142 bool m_dukptCmacHasBeenSet = false;
143};
144
145} // namespace Model
146} // namespace PaymentCryptographyData
147} // namespace Aws
AWS_PAYMENTCRYPTOGRAPHYDATA_API MacAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
MacAttributes & WithDukptCmac(DukptCmacT &&value)
MacAttributes & WithAlgorithm(MacAlgorithm value)
MacAttributes & WithDukptIso9797Algorithm1(DukptIso9797Algorithm1T &&value)
void SetDukptIso9797Algorithm3(DukptIso9797Algorithm3T &&value)
AWS_PAYMENTCRYPTOGRAPHYDATA_API MacAttributes(Aws::Utils::Json::JsonView jsonValue)
AWS_PAYMENTCRYPTOGRAPHYDATA_API MacAttributes()=default
const MacAlgorithmDukpt & GetDukptCmac() const
MacAttributes & WithEmvMac(EmvMacT &&value)
AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const
const MacAlgorithmDukpt & GetDukptIso9797Algorithm3() const
MacAttributes & WithDukptIso9797Algorithm3(DukptIso9797Algorithm3T &&value)
const MacAlgorithmDukpt & GetDukptIso9797Algorithm1() const
void SetDukptIso9797Algorithm1(DukptIso9797Algorithm1T &&value)
Aws::Utils::Json::JsonValue JsonValue