AWS SDK for C++

AWS SDK for C++ Version 1.11.719

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
68 inline KeyCheckValueAlgorithm GetKeyCheckValueAlgorithm() const { return m_keyCheckValueAlgorithm; }
69 inline bool KeyCheckValueAlgorithmHasBeenSet() const { return m_keyCheckValueAlgorithmHasBeenSet; }
71 m_keyCheckValueAlgorithmHasBeenSet = true;
72 m_keyCheckValueAlgorithm = value;
73 }
76 return *this;
77 }
79
81
84 inline bool GetExportable() const { return m_exportable; }
85 inline bool ExportableHasBeenSet() const { return m_exportableHasBeenSet; }
86 inline void SetExportable(bool value) {
87 m_exportableHasBeenSet = true;
88 m_exportable = value;
89 }
90 inline CreateKeyRequest& WithExportable(bool value) {
91 SetExportable(value);
92 return *this;
93 }
95
97
102 inline bool GetEnabled() const { return m_enabled; }
103 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
104 inline void SetEnabled(bool value) {
105 m_enabledHasBeenSet = true;
106 m_enabled = value;
107 }
108 inline CreateKeyRequest& WithEnabled(bool value) {
109 SetEnabled(value);
110 return *this;
111 }
113
115
129 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
130 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
131 template <typename TagsT = Aws::Vector<Tag>>
132 void SetTags(TagsT&& value) {
133 m_tagsHasBeenSet = true;
134 m_tags = std::forward<TagsT>(value);
135 }
136 template <typename TagsT = Aws::Vector<Tag>>
137 CreateKeyRequest& WithTags(TagsT&& value) {
138 SetTags(std::forward<TagsT>(value));
139 return *this;
140 }
141 template <typename TagsT = Tag>
142 CreateKeyRequest& AddTags(TagsT&& value) {
143 m_tagsHasBeenSet = true;
144 m_tags.emplace_back(std::forward<TagsT>(value));
145 return *this;
146 }
148
150
155 inline DeriveKeyUsage GetDeriveKeyUsage() const { return m_deriveKeyUsage; }
156 inline bool DeriveKeyUsageHasBeenSet() const { return m_deriveKeyUsageHasBeenSet; }
158 m_deriveKeyUsageHasBeenSet = true;
159 m_deriveKeyUsage = value;
160 }
162 SetDeriveKeyUsage(value);
163 return *this;
164 }
166
168
169 inline const Aws::Vector<Aws::String>& GetReplicationRegions() const { return m_replicationRegions; }
170 inline bool ReplicationRegionsHasBeenSet() const { return m_replicationRegionsHasBeenSet; }
171 template <typename ReplicationRegionsT = Aws::Vector<Aws::String>>
172 void SetReplicationRegions(ReplicationRegionsT&& value) {
173 m_replicationRegionsHasBeenSet = true;
174 m_replicationRegions = std::forward<ReplicationRegionsT>(value);
175 }
176 template <typename ReplicationRegionsT = Aws::Vector<Aws::String>>
177 CreateKeyRequest& WithReplicationRegions(ReplicationRegionsT&& value) {
178 SetReplicationRegions(std::forward<ReplicationRegionsT>(value));
179 return *this;
180 }
181 template <typename ReplicationRegionsT = Aws::String>
182 CreateKeyRequest& AddReplicationRegions(ReplicationRegionsT&& value) {
183 m_replicationRegionsHasBeenSet = true;
184 m_replicationRegions.emplace_back(std::forward<ReplicationRegionsT>(value));
185 return *this;
186 }
188 private:
189 KeyAttributes m_keyAttributes;
190
192
193 bool m_exportable{false};
194
195 bool m_enabled{false};
196
197 Aws::Vector<Tag> m_tags;
198
199 DeriveKeyUsage m_deriveKeyUsage{DeriveKeyUsage::NOT_SET};
200
201 Aws::Vector<Aws::String> m_replicationRegions;
202 bool m_keyAttributesHasBeenSet = false;
203 bool m_keyCheckValueAlgorithmHasBeenSet = false;
204 bool m_exportableHasBeenSet = false;
205 bool m_enabledHasBeenSet = false;
206 bool m_tagsHasBeenSet = false;
207 bool m_deriveKeyUsageHasBeenSet = false;
208 bool m_replicationRegionsHasBeenSet = false;
209};
210
211} // namespace Model
212} // namespace PaymentCryptography
213} // 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