AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
RequestCertificateRequest.h
1
6#pragma once
7#include <aws/acm/ACMRequest.h>
8#include <aws/acm/ACM_EXPORTS.h>
9#include <aws/acm/model/CertificateManagedBy.h>
10#include <aws/acm/model/CertificateOptions.h>
11#include <aws/acm/model/DomainValidationOption.h>
12#include <aws/acm/model/KeyAlgorithm.h>
13#include <aws/acm/model/Tag.h>
14#include <aws/acm/model/ValidationMethod.h>
15#include <aws/core/utils/memory/stl/AWSString.h>
16#include <aws/core/utils/memory/stl/AWSVector.h>
17
18#include <utility>
19
20namespace Aws {
21namespace ACM {
22namespace Model {
23
27 public:
28 AWS_ACM_API RequestCertificateRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "RequestCertificate"; }
35
36 AWS_ACM_API Aws::String SerializePayload() const override;
37
39
41
53 inline const Aws::String& GetDomainName() const { return m_domainName; }
54 inline bool DomainNameHasBeenSet() const { return m_domainNameHasBeenSet; }
55 template <typename DomainNameT = Aws::String>
56 void SetDomainName(DomainNameT&& value) {
57 m_domainNameHasBeenSet = true;
58 m_domainName = std::forward<DomainNameT>(value);
59 }
60 template <typename DomainNameT = Aws::String>
62 SetDomainName(std::forward<DomainNameT>(value));
63 return *this;
64 }
66
68
76 inline ValidationMethod GetValidationMethod() const { return m_validationMethod; }
77 inline bool ValidationMethodHasBeenSet() const { return m_validationMethodHasBeenSet; }
79 m_validationMethodHasBeenSet = true;
80 m_validationMethod = value;
81 }
84 return *this;
85 }
87
89
109 inline const Aws::Vector<Aws::String>& GetSubjectAlternativeNames() const { return m_subjectAlternativeNames; }
110 inline bool SubjectAlternativeNamesHasBeenSet() const { return m_subjectAlternativeNamesHasBeenSet; }
111 template <typename SubjectAlternativeNamesT = Aws::Vector<Aws::String>>
112 void SetSubjectAlternativeNames(SubjectAlternativeNamesT&& value) {
113 m_subjectAlternativeNamesHasBeenSet = true;
114 m_subjectAlternativeNames = std::forward<SubjectAlternativeNamesT>(value);
115 }
116 template <typename SubjectAlternativeNamesT = Aws::Vector<Aws::String>>
117 RequestCertificateRequest& WithSubjectAlternativeNames(SubjectAlternativeNamesT&& value) {
118 SetSubjectAlternativeNames(std::forward<SubjectAlternativeNamesT>(value));
119 return *this;
120 }
121 template <typename SubjectAlternativeNamesT = Aws::String>
122 RequestCertificateRequest& AddSubjectAlternativeNames(SubjectAlternativeNamesT&& value) {
123 m_subjectAlternativeNamesHasBeenSet = true;
124 m_subjectAlternativeNames.emplace_back(std::forward<SubjectAlternativeNamesT>(value));
125 return *this;
126 }
128
130
139 inline const Aws::String& GetIdempotencyToken() const { return m_idempotencyToken; }
140 inline bool IdempotencyTokenHasBeenSet() const { return m_idempotencyTokenHasBeenSet; }
141 template <typename IdempotencyTokenT = Aws::String>
142 void SetIdempotencyToken(IdempotencyTokenT&& value) {
143 m_idempotencyTokenHasBeenSet = true;
144 m_idempotencyToken = std::forward<IdempotencyTokenT>(value);
145 }
146 template <typename IdempotencyTokenT = Aws::String>
148 SetIdempotencyToken(std::forward<IdempotencyTokenT>(value));
149 return *this;
150 }
152
154
158 inline const Aws::Vector<DomainValidationOption>& GetDomainValidationOptions() const { return m_domainValidationOptions; }
159 inline bool DomainValidationOptionsHasBeenSet() const { return m_domainValidationOptionsHasBeenSet; }
160 template <typename DomainValidationOptionsT = Aws::Vector<DomainValidationOption>>
161 void SetDomainValidationOptions(DomainValidationOptionsT&& value) {
162 m_domainValidationOptionsHasBeenSet = true;
163 m_domainValidationOptions = std::forward<DomainValidationOptionsT>(value);
164 }
165 template <typename DomainValidationOptionsT = Aws::Vector<DomainValidationOption>>
166 RequestCertificateRequest& WithDomainValidationOptions(DomainValidationOptionsT&& value) {
167 SetDomainValidationOptions(std::forward<DomainValidationOptionsT>(value));
168 return *this;
169 }
170 template <typename DomainValidationOptionsT = DomainValidationOption>
171 RequestCertificateRequest& AddDomainValidationOptions(DomainValidationOptionsT&& value) {
172 m_domainValidationOptionsHasBeenSet = true;
173 m_domainValidationOptions.emplace_back(std::forward<DomainValidationOptionsT>(value));
174 return *this;
175 }
177
179
192 inline const CertificateOptions& GetOptions() const { return m_options; }
193 inline bool OptionsHasBeenSet() const { return m_optionsHasBeenSet; }
194 template <typename OptionsT = CertificateOptions>
195 void SetOptions(OptionsT&& value) {
196 m_optionsHasBeenSet = true;
197 m_options = std::forward<OptionsT>(value);
198 }
199 template <typename OptionsT = CertificateOptions>
201 SetOptions(std::forward<OptionsT>(value));
202 return *this;
203 }
205
207
218 inline const Aws::String& GetCertificateAuthorityArn() const { return m_certificateAuthorityArn; }
219 inline bool CertificateAuthorityArnHasBeenSet() const { return m_certificateAuthorityArnHasBeenSet; }
220 template <typename CertificateAuthorityArnT = Aws::String>
221 void SetCertificateAuthorityArn(CertificateAuthorityArnT&& value) {
222 m_certificateAuthorityArnHasBeenSet = true;
223 m_certificateAuthorityArn = std::forward<CertificateAuthorityArnT>(value);
224 }
225 template <typename CertificateAuthorityArnT = Aws::String>
226 RequestCertificateRequest& WithCertificateAuthorityArn(CertificateAuthorityArnT&& value) {
227 SetCertificateAuthorityArn(std::forward<CertificateAuthorityArnT>(value));
228 return *this;
229 }
231
233
236 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
237 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
238 template <typename TagsT = Aws::Vector<Tag>>
239 void SetTags(TagsT&& value) {
240 m_tagsHasBeenSet = true;
241 m_tags = std::forward<TagsT>(value);
242 }
243 template <typename TagsT = Aws::Vector<Tag>>
245 SetTags(std::forward<TagsT>(value));
246 return *this;
247 }
248 template <typename TagsT = Tag>
250 m_tagsHasBeenSet = true;
251 m_tags.emplace_back(std::forward<TagsT>(value));
252 return *this;
253 }
255
257
278 inline KeyAlgorithm GetKeyAlgorithm() const { return m_keyAlgorithm; }
279 inline bool KeyAlgorithmHasBeenSet() const { return m_keyAlgorithmHasBeenSet; }
280 inline void SetKeyAlgorithm(KeyAlgorithm value) {
281 m_keyAlgorithmHasBeenSet = true;
282 m_keyAlgorithm = value;
283 }
285 SetKeyAlgorithm(value);
286 return *this;
287 }
289
291
295 inline CertificateManagedBy GetManagedBy() const { return m_managedBy; }
296 inline bool ManagedByHasBeenSet() const { return m_managedByHasBeenSet; }
298 m_managedByHasBeenSet = true;
299 m_managedBy = value;
300 }
302 SetManagedBy(value);
303 return *this;
304 }
306 private:
307 Aws::String m_domainName;
308
310
311 Aws::Vector<Aws::String> m_subjectAlternativeNames;
312
313 Aws::String m_idempotencyToken;
314
315 Aws::Vector<DomainValidationOption> m_domainValidationOptions;
316
317 CertificateOptions m_options;
318
319 Aws::String m_certificateAuthorityArn;
320
321 Aws::Vector<Tag> m_tags;
322
323 KeyAlgorithm m_keyAlgorithm{KeyAlgorithm::NOT_SET};
324
326 bool m_domainNameHasBeenSet = false;
327 bool m_validationMethodHasBeenSet = false;
328 bool m_subjectAlternativeNamesHasBeenSet = false;
329 bool m_idempotencyTokenHasBeenSet = false;
330 bool m_domainValidationOptionsHasBeenSet = false;
331 bool m_optionsHasBeenSet = false;
332 bool m_certificateAuthorityArnHasBeenSet = false;
333 bool m_tagsHasBeenSet = false;
334 bool m_keyAlgorithmHasBeenSet = false;
335 bool m_managedByHasBeenSet = false;
336};
337
338} // namespace Model
339} // namespace ACM
340} // namespace Aws
RequestCertificateRequest & AddSubjectAlternativeNames(SubjectAlternativeNamesT &&value)
RequestCertificateRequest & WithKeyAlgorithm(KeyAlgorithm value)
AWS_ACM_API Aws::String SerializePayload() const override
RequestCertificateRequest & WithManagedBy(CertificateManagedBy value)
RequestCertificateRequest & WithTags(TagsT &&value)
void SetCertificateAuthorityArn(CertificateAuthorityArnT &&value)
const Aws::Vector< Aws::String > & GetSubjectAlternativeNames() const
AWS_ACM_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
void SetDomainValidationOptions(DomainValidationOptionsT &&value)
RequestCertificateRequest & WithSubjectAlternativeNames(SubjectAlternativeNamesT &&value)
RequestCertificateRequest & AddDomainValidationOptions(DomainValidationOptionsT &&value)
RequestCertificateRequest & WithDomainName(DomainNameT &&value)
RequestCertificateRequest & WithDomainValidationOptions(DomainValidationOptionsT &&value)
RequestCertificateRequest & WithIdempotencyToken(IdempotencyTokenT &&value)
RequestCertificateRequest & WithOptions(OptionsT &&value)
void SetSubjectAlternativeNames(SubjectAlternativeNamesT &&value)
AWS_ACM_API RequestCertificateRequest()=default
virtual const char * GetServiceRequestName() const override
RequestCertificateRequest & AddTags(TagsT &&value)
RequestCertificateRequest & WithValidationMethod(ValidationMethod value)
RequestCertificateRequest & WithCertificateAuthorityArn(CertificateAuthorityArnT &&value)
const Aws::Vector< DomainValidationOption > & GetDomainValidationOptions() const
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