AWS SDK for C++

AWS SDK for C++ Version 1.11.844

Loading...
Searching...
No Matches
CreateKeyRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/payment-cryptography/PaymentCryptographyRequest.h>
10#include <aws/payment-cryptography/PaymentCryptography_EXPORTS.h>
11#include <aws/payment-cryptography/model/DeriveKeyUsage.h>
12#include <aws/payment-cryptography/model/KeyAttributes.h>
13#include <aws/payment-cryptography/model/KeyCheckValueAlgorithm.h>
14#include <aws/payment-cryptography/model/Tag.h>
15
16#include <utility>
17
18namespace Aws {
19namespace PaymentCryptography {
20namespace Model {
21
25 public:
26 AWS_PAYMENTCRYPTOGRAPHY_API CreateKeyRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "CreateKey"; }
33
34 AWS_PAYMENTCRYPTOGRAPHY_API Aws::String SerializePayload() const override;
35
36 AWS_PAYMENTCRYPTOGRAPHY_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
37
39
44 inline const KeyAttributes& GetKeyAttributes() const { return m_keyAttributes; }
45 inline bool KeyAttributesHasBeenSet() const { return m_keyAttributesHasBeenSet; }
46 template <typename KeyAttributesT = KeyAttributes>
47 void SetKeyAttributes(KeyAttributesT&& value) {
48 m_keyAttributesHasBeenSet = true;
49 m_keyAttributes = std::forward<KeyAttributesT>(value);
50 }
51 template <typename KeyAttributesT = KeyAttributes>
52 CreateKeyRequest& WithKeyAttributes(KeyAttributesT&& value) {
53 SetKeyAttributes(std::forward<KeyAttributesT>(value));
54 return *this;
55 }
57
59
69 inline KeyCheckValueAlgorithm GetKeyCheckValueAlgorithm() const { return m_keyCheckValueAlgorithm; }
70 inline bool KeyCheckValueAlgorithmHasBeenSet() const { return m_keyCheckValueAlgorithmHasBeenSet; }
72 m_keyCheckValueAlgorithmHasBeenSet = true;
73 m_keyCheckValueAlgorithm = value;
74 }
77 return *this;
78 }
80
82
85 inline bool GetExportable() const { return m_exportable; }
86 inline bool ExportableHasBeenSet() const { return m_exportableHasBeenSet; }
87 inline void SetExportable(bool value) {
88 m_exportableHasBeenSet = true;
89 m_exportable = value;
90 }
91 inline CreateKeyRequest& WithExportable(bool value) {
92 SetExportable(value);
93 return *this;
94 }
96
98
103 inline bool GetEnabled() const { return m_enabled; }
104 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
105 inline void SetEnabled(bool value) {
106 m_enabledHasBeenSet = true;
107 m_enabled = value;
108 }
109 inline CreateKeyRequest& WithEnabled(bool value) {
110 SetEnabled(value);
111 return *this;
112 }
114
116
130 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
131 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
132 template <typename TagsT = Aws::Vector<Tag>>
133 void SetTags(TagsT&& value) {
134 m_tagsHasBeenSet = true;
135 m_tags = std::forward<TagsT>(value);
136 }
137 template <typename TagsT = Aws::Vector<Tag>>
138 CreateKeyRequest& WithTags(TagsT&& value) {
139 SetTags(std::forward<TagsT>(value));
140 return *this;
141 }
142 template <typename TagsT = Tag>
143 CreateKeyRequest& AddTags(TagsT&& value) {
144 m_tagsHasBeenSet = true;
145 m_tags.emplace_back(std::forward<TagsT>(value));
146 return *this;
147 }
149
151
156 inline DeriveKeyUsage GetDeriveKeyUsage() const { return m_deriveKeyUsage; }
157 inline bool DeriveKeyUsageHasBeenSet() const { return m_deriveKeyUsageHasBeenSet; }
159 m_deriveKeyUsageHasBeenSet = true;
160 m_deriveKeyUsage = value;
161 }
163 SetDeriveKeyUsage(value);
164 return *this;
165 }
167
169
170 inline const Aws::Vector<Aws::String>& GetReplicationRegions() const { return m_replicationRegions; }
171 inline bool ReplicationRegionsHasBeenSet() const { return m_replicationRegionsHasBeenSet; }
172 template <typename ReplicationRegionsT = Aws::Vector<Aws::String>>
173 void SetReplicationRegions(ReplicationRegionsT&& value) {
174 m_replicationRegionsHasBeenSet = true;
175 m_replicationRegions = std::forward<ReplicationRegionsT>(value);
176 }
177 template <typename ReplicationRegionsT = Aws::Vector<Aws::String>>
178 CreateKeyRequest& WithReplicationRegions(ReplicationRegionsT&& value) {
179 SetReplicationRegions(std::forward<ReplicationRegionsT>(value));
180 return *this;
181 }
182 template <typename ReplicationRegionsT = Aws::String>
183 CreateKeyRequest& AddReplicationRegions(ReplicationRegionsT&& value) {
184 m_replicationRegionsHasBeenSet = true;
185 m_replicationRegions.emplace_back(std::forward<ReplicationRegionsT>(value));
186 return *this;
187 }
189 private:
190 KeyAttributes m_keyAttributes;
191
193
194 bool m_exportable{false};
195
196 bool m_enabled{false};
197
198 Aws::Vector<Tag> m_tags;
199
200 DeriveKeyUsage m_deriveKeyUsage{DeriveKeyUsage::NOT_SET};
201
202 Aws::Vector<Aws::String> m_replicationRegions;
203 bool m_keyAttributesHasBeenSet = false;
204 bool m_keyCheckValueAlgorithmHasBeenSet = false;
205 bool m_exportableHasBeenSet = false;
206 bool m_enabledHasBeenSet = false;
207 bool m_tagsHasBeenSet = false;
208 bool m_deriveKeyUsageHasBeenSet = false;
209 bool m_replicationRegionsHasBeenSet = false;
210};
211
212} // namespace Model
213} // namespace PaymentCryptography
214} // namespace Aws
AWS_PAYMENTCRYPTOGRAPHY_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::Vector< Aws::String > & GetReplicationRegions() const
CreateKeyRequest & WithReplicationRegions(ReplicationRegionsT &&value)
void SetReplicationRegions(ReplicationRegionsT &&value)
CreateKeyRequest & WithKeyAttributes(KeyAttributesT &&value)
void SetKeyCheckValueAlgorithm(KeyCheckValueAlgorithm value)
CreateKeyRequest & WithKeyCheckValueAlgorithm(KeyCheckValueAlgorithm value)
AWS_PAYMENTCRYPTOGRAPHY_API Aws::String SerializePayload() const override
CreateKeyRequest & WithDeriveKeyUsage(DeriveKeyUsage value)
KeyCheckValueAlgorithm GetKeyCheckValueAlgorithm() const
CreateKeyRequest & AddReplicationRegions(ReplicationRegionsT &&value)
virtual const char * GetServiceRequestName() const override
AWS_PAYMENTCRYPTOGRAPHY_API CreateKeyRequest()=default
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector