AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CreateEksAnywhereSubscriptionRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/eks/EKSRequest.h>
11#include <aws/eks/EKS_EXPORTS.h>
12#include <aws/eks/model/EksAnywhereSubscriptionLicenseType.h>
13#include <aws/eks/model/EksAnywhereSubscriptionTerm.h>
14
15#include <utility>
16
17namespace Aws {
18namespace EKS {
19namespace Model {
20
24 public:
25 AWS_EKS_API CreateEksAnywhereSubscriptionRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "CreateEksAnywhereSubscription"; }
32
33 AWS_EKS_API Aws::String SerializePayload() const override;
34
36
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template <typename NameT = Aws::String>
46 void SetName(NameT&& value) {
47 m_nameHasBeenSet = true;
48 m_name = std::forward<NameT>(value);
49 }
50 template <typename NameT = Aws::String>
52 SetName(std::forward<NameT>(value));
53 return *this;
54 }
56
58
65 inline const EksAnywhereSubscriptionTerm& GetTerm() const { return m_term; }
66 inline bool TermHasBeenSet() const { return m_termHasBeenSet; }
67 template <typename TermT = EksAnywhereSubscriptionTerm>
68 void SetTerm(TermT&& value) {
69 m_termHasBeenSet = true;
70 m_term = std::forward<TermT>(value);
71 }
72 template <typename TermT = EksAnywhereSubscriptionTerm>
74 SetTerm(std::forward<TermT>(value));
75 return *this;
76 }
78
80
85 inline int GetLicenseQuantity() const { return m_licenseQuantity; }
86 inline bool LicenseQuantityHasBeenSet() const { return m_licenseQuantityHasBeenSet; }
87 inline void SetLicenseQuantity(int value) {
88 m_licenseQuantityHasBeenSet = true;
89 m_licenseQuantity = value;
90 }
92 SetLicenseQuantity(value);
93 return *this;
94 }
96
98
103 inline EksAnywhereSubscriptionLicenseType GetLicenseType() const { return m_licenseType; }
104 inline bool LicenseTypeHasBeenSet() const { return m_licenseTypeHasBeenSet; }
106 m_licenseTypeHasBeenSet = true;
107 m_licenseType = value;
108 }
110 SetLicenseType(value);
111 return *this;
112 }
114
116
120 inline bool GetAutoRenew() const { return m_autoRenew; }
121 inline bool AutoRenewHasBeenSet() const { return m_autoRenewHasBeenSet; }
122 inline void SetAutoRenew(bool value) {
123 m_autoRenewHasBeenSet = true;
124 m_autoRenew = value;
125 }
127 SetAutoRenew(value);
128 return *this;
129 }
131
133
137 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
138 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
139 template <typename ClientRequestTokenT = Aws::String>
140 void SetClientRequestToken(ClientRequestTokenT&& value) {
141 m_clientRequestTokenHasBeenSet = true;
142 m_clientRequestToken = std::forward<ClientRequestTokenT>(value);
143 }
144 template <typename ClientRequestTokenT = Aws::String>
146 SetClientRequestToken(std::forward<ClientRequestTokenT>(value));
147 return *this;
148 }
150
152
158 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
159 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
160 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
161 void SetTags(TagsT&& value) {
162 m_tagsHasBeenSet = true;
163 m_tags = std::forward<TagsT>(value);
164 }
165 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
167 SetTags(std::forward<TagsT>(value));
168 return *this;
169 }
170 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
171 CreateEksAnywhereSubscriptionRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
172 m_tagsHasBeenSet = true;
173 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
174 return *this;
175 }
177 private:
178 Aws::String m_name;
179
181
182 int m_licenseQuantity{0};
183
185
186 bool m_autoRenew{false};
187
188 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
189
191 bool m_nameHasBeenSet = false;
192 bool m_termHasBeenSet = false;
193 bool m_licenseQuantityHasBeenSet = false;
194 bool m_licenseTypeHasBeenSet = false;
195 bool m_autoRenewHasBeenSet = false;
196 bool m_clientRequestTokenHasBeenSet = true;
197 bool m_tagsHasBeenSet = false;
198};
199
200} // namespace Model
201} // namespace EKS
202} // namespace Aws
CreateEksAnywhereSubscriptionRequest & WithTerm(TermT &&value)
CreateEksAnywhereSubscriptionRequest & WithAutoRenew(bool value)
CreateEksAnywhereSubscriptionRequest & WithClientRequestToken(ClientRequestTokenT &&value)
AWS_EKS_API Aws::String SerializePayload() const override
CreateEksAnywhereSubscriptionRequest & WithName(NameT &&value)
CreateEksAnywhereSubscriptionRequest & WithLicenseQuantity(int value)
CreateEksAnywhereSubscriptionRequest & WithTags(TagsT &&value)
CreateEksAnywhereSubscriptionRequest & WithLicenseType(EksAnywhereSubscriptionLicenseType value)
CreateEksAnywhereSubscriptionRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
static Aws::Utils::UUID PseudoRandomUUID()
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String