AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
EmvEncryptionAttributes.h
1
6#pragma once
7#include <aws/payment-cryptography-data/PaymentCryptographyData_EXPORTS.h>
8#include <aws/payment-cryptography-data/model/EmvMajorKeyDerivationMode.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/payment-cryptography-data/model/EmvEncryptionMode.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace PaymentCryptographyData
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvEncryptionAttributes() = default;
38 AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvEncryptionAttributes(Aws::Utils::Json::JsonView jsonValue);
39 AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvEncryptionAttributes& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
48 inline EmvMajorKeyDerivationMode GetMajorKeyDerivationMode() const { return m_majorKeyDerivationMode; }
49 inline bool MajorKeyDerivationModeHasBeenSet() const { return m_majorKeyDerivationModeHasBeenSet; }
50 inline void SetMajorKeyDerivationMode(EmvMajorKeyDerivationMode value) { m_majorKeyDerivationModeHasBeenSet = true; m_majorKeyDerivationMode = value; }
53
55
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) { m_primaryAccountNumberHasBeenSet = true; m_primaryAccountNumber = std::forward<PrimaryAccountNumberT>(value); }
63 template<typename PrimaryAccountNumberT = Aws::String>
64 EmvEncryptionAttributes& WithPrimaryAccountNumber(PrimaryAccountNumberT&& value) { SetPrimaryAccountNumber(std::forward<PrimaryAccountNumberT>(value)); return *this;}
66
68
73 inline const Aws::String& GetPanSequenceNumber() const { return m_panSequenceNumber; }
74 inline bool PanSequenceNumberHasBeenSet() const { return m_panSequenceNumberHasBeenSet; }
75 template<typename PanSequenceNumberT = Aws::String>
76 void SetPanSequenceNumber(PanSequenceNumberT&& value) { m_panSequenceNumberHasBeenSet = true; m_panSequenceNumber = std::forward<PanSequenceNumberT>(value); }
77 template<typename PanSequenceNumberT = Aws::String>
78 EmvEncryptionAttributes& WithPanSequenceNumber(PanSequenceNumberT&& value) { SetPanSequenceNumber(std::forward<PanSequenceNumberT>(value)); return *this;}
80
82
87 inline const Aws::String& GetSessionDerivationData() const { return m_sessionDerivationData; }
88 inline bool SessionDerivationDataHasBeenSet() const { return m_sessionDerivationDataHasBeenSet; }
89 template<typename SessionDerivationDataT = Aws::String>
90 void SetSessionDerivationData(SessionDerivationDataT&& value) { m_sessionDerivationDataHasBeenSet = true; m_sessionDerivationData = std::forward<SessionDerivationDataT>(value); }
91 template<typename SessionDerivationDataT = Aws::String>
92 EmvEncryptionAttributes& WithSessionDerivationData(SessionDerivationDataT&& value) { SetSessionDerivationData(std::forward<SessionDerivationDataT>(value)); return *this;}
94
96
99 inline EmvEncryptionMode GetMode() const { return m_mode; }
100 inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; }
101 inline void SetMode(EmvEncryptionMode value) { m_modeHasBeenSet = true; m_mode = value; }
102 inline EmvEncryptionAttributes& WithMode(EmvEncryptionMode value) { SetMode(value); return *this;}
104
106
110 inline const Aws::String& GetInitializationVector() const { return m_initializationVector; }
111 inline bool InitializationVectorHasBeenSet() const { return m_initializationVectorHasBeenSet; }
112 template<typename InitializationVectorT = Aws::String>
113 void SetInitializationVector(InitializationVectorT&& value) { m_initializationVectorHasBeenSet = true; m_initializationVector = std::forward<InitializationVectorT>(value); }
114 template<typename InitializationVectorT = Aws::String>
115 EmvEncryptionAttributes& WithInitializationVector(InitializationVectorT&& value) { SetInitializationVector(std::forward<InitializationVectorT>(value)); return *this;}
117 private:
118
120 bool m_majorKeyDerivationModeHasBeenSet = false;
121
122 Aws::String m_primaryAccountNumber;
123 bool m_primaryAccountNumberHasBeenSet = false;
124
125 Aws::String m_panSequenceNumber;
126 bool m_panSequenceNumberHasBeenSet = false;
127
128 Aws::String m_sessionDerivationData;
129 bool m_sessionDerivationDataHasBeenSet = false;
130
132 bool m_modeHasBeenSet = false;
133
134 Aws::String m_initializationVector;
135 bool m_initializationVectorHasBeenSet = false;
136 };
137
138} // namespace Model
139} // namespace PaymentCryptographyData
140} // namespace Aws
EmvEncryptionAttributes & WithInitializationVector(InitializationVectorT &&value)
EmvEncryptionAttributes & WithSessionDerivationData(SessionDerivationDataT &&value)
AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const
EmvEncryptionAttributes & WithMode(EmvEncryptionMode value)
EmvEncryptionAttributes & WithPanSequenceNumber(PanSequenceNumberT &&value)
EmvEncryptionAttributes & WithMajorKeyDerivationMode(EmvMajorKeyDerivationMode value)
EmvEncryptionAttributes & WithPrimaryAccountNumber(PrimaryAccountNumberT &&value)
AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvEncryptionAttributes()=default
AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvEncryptionAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_PAYMENTCRYPTOGRAPHYDATA_API EmvEncryptionAttributes(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue