AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
EmvCommonAttributes.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/payment-cryptography-data/PaymentCryptographyData_EXPORTS.h>
9#include <aws/payment-cryptography-data/model/EmvEncryptionMode.h>
10#include <aws/payment-cryptography-data/model/MajorKeyDerivationMode.h>
11#include <aws/payment-cryptography-data/model/PinBlockLengthPosition.h>
12#include <aws/payment-cryptography-data/model/PinBlockPaddingType.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace PaymentCryptographyData {
24namespace Model {
25
33 public:
34 AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvCommonAttributes() = default;
35 AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvCommonAttributes(Aws::Utils::Json::JsonView jsonValue);
36 AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvCommonAttributes& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline MajorKeyDerivationMode GetMajorKeyDerivationMode() const { return m_majorKeyDerivationMode; }
44 inline bool MajorKeyDerivationModeHasBeenSet() const { return m_majorKeyDerivationModeHasBeenSet; }
46 m_majorKeyDerivationModeHasBeenSet = true;
47 m_majorKeyDerivationMode = value;
48 }
51 return *this;
52 }
54
56
59 inline const Aws::String& GetPrimaryAccountNumber() const { return m_primaryAccountNumber; }
60 inline bool PrimaryAccountNumberHasBeenSet() const { return m_primaryAccountNumberHasBeenSet; }
61 template <typename PrimaryAccountNumberT = Aws::String>
62 void SetPrimaryAccountNumber(PrimaryAccountNumberT&& value) {
63 m_primaryAccountNumberHasBeenSet = true;
64 m_primaryAccountNumber = std::forward<PrimaryAccountNumberT>(value);
65 }
66 template <typename PrimaryAccountNumberT = Aws::String>
67 EmvCommonAttributes& WithPrimaryAccountNumber(PrimaryAccountNumberT&& value) {
68 SetPrimaryAccountNumber(std::forward<PrimaryAccountNumberT>(value));
69 return *this;
70 }
72
74
79 inline const Aws::String& GetPanSequenceNumber() const { return m_panSequenceNumber; }
80 inline bool PanSequenceNumberHasBeenSet() const { return m_panSequenceNumberHasBeenSet; }
81 template <typename PanSequenceNumberT = Aws::String>
82 void SetPanSequenceNumber(PanSequenceNumberT&& value) {
83 m_panSequenceNumberHasBeenSet = true;
84 m_panSequenceNumber = std::forward<PanSequenceNumberT>(value);
85 }
86 template <typename PanSequenceNumberT = Aws::String>
87 EmvCommonAttributes& WithPanSequenceNumber(PanSequenceNumberT&& value) {
88 SetPanSequenceNumber(std::forward<PanSequenceNumberT>(value));
89 return *this;
90 }
92
94
98 inline const Aws::String& GetApplicationCryptogram() const { return m_applicationCryptogram; }
99 inline bool ApplicationCryptogramHasBeenSet() const { return m_applicationCryptogramHasBeenSet; }
100 template <typename ApplicationCryptogramT = Aws::String>
101 void SetApplicationCryptogram(ApplicationCryptogramT&& value) {
102 m_applicationCryptogramHasBeenSet = true;
103 m_applicationCryptogram = std::forward<ApplicationCryptogramT>(value);
104 }
105 template <typename ApplicationCryptogramT = Aws::String>
106 EmvCommonAttributes& WithApplicationCryptogram(ApplicationCryptogramT&& value) {
107 SetApplicationCryptogram(std::forward<ApplicationCryptogramT>(value));
108 return *this;
109 }
111
113
116 inline EmvEncryptionMode GetMode() const { return m_mode; }
117 inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; }
118 inline void SetMode(EmvEncryptionMode value) {
119 m_modeHasBeenSet = true;
120 m_mode = value;
121 }
123 SetMode(value);
124 return *this;
125 }
127
129
136 inline PinBlockPaddingType GetPinBlockPaddingType() const { return m_pinBlockPaddingType; }
137 inline bool PinBlockPaddingTypeHasBeenSet() const { return m_pinBlockPaddingTypeHasBeenSet; }
139 m_pinBlockPaddingTypeHasBeenSet = true;
140 m_pinBlockPaddingType = value;
141 }
144 return *this;
145 }
147
149
154 inline PinBlockLengthPosition GetPinBlockLengthPosition() const { return m_pinBlockLengthPosition; }
155 inline bool PinBlockLengthPositionHasBeenSet() const { return m_pinBlockLengthPositionHasBeenSet; }
157 m_pinBlockLengthPositionHasBeenSet = true;
158 m_pinBlockLengthPosition = value;
159 }
162 return *this;
163 }
165 private:
167
168 Aws::String m_primaryAccountNumber;
169
170 Aws::String m_panSequenceNumber;
171
172 Aws::String m_applicationCryptogram;
173
175
177
179 bool m_majorKeyDerivationModeHasBeenSet = false;
180 bool m_primaryAccountNumberHasBeenSet = false;
181 bool m_panSequenceNumberHasBeenSet = false;
182 bool m_applicationCryptogramHasBeenSet = false;
183 bool m_modeHasBeenSet = false;
184 bool m_pinBlockPaddingTypeHasBeenSet = false;
185 bool m_pinBlockLengthPositionHasBeenSet = false;
186};
187
188} // namespace Model
189} // namespace PaymentCryptographyData
190} // namespace Aws
EmvCommonAttributes & WithPanSequenceNumber(PanSequenceNumberT &&value)
AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvCommonAttributes(Aws::Utils::Json::JsonView jsonValue)
EmvCommonAttributes & WithPrimaryAccountNumber(PrimaryAccountNumberT &&value)
EmvCommonAttributes & WithMode(EmvEncryptionMode value)
AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvCommonAttributes()=default
AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const
EmvCommonAttributes & WithPinBlockLengthPosition(PinBlockLengthPosition value)
void SetApplicationCryptogram(ApplicationCryptogramT &&value)
EmvCommonAttributes & WithPinBlockPaddingType(PinBlockPaddingType value)
void SetPrimaryAccountNumber(PrimaryAccountNumberT &&value)
AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvCommonAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
EmvCommonAttributes & WithApplicationCryptogram(ApplicationCryptogramT &&value)
EmvCommonAttributes & WithMajorKeyDerivationMode(MajorKeyDerivationMode value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue