AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateEksAnywhereSubscriptionRequest.h
1
6#pragma once
7#include <aws/eks/EKS_EXPORTS.h>
8#include <aws/eks/EKSRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/eks/model/EksAnywhereSubscriptionTerm.h>
11#include <aws/eks/model/EksAnywhereSubscriptionLicenseType.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <utility>
14#include <aws/core/utils/UUID.h>
15
16namespace Aws
17{
18namespace EKS
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_EKS_API CreateEksAnywhereSubscriptionRequest() = 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 "CreateEksAnywhereSubscription"; }
35
36 AWS_EKS_API Aws::String SerializePayload() const override;
37
38
40
47 inline const Aws::String& GetName() const { return m_name; }
48 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
49 template<typename NameT = Aws::String>
50 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
51 template<typename NameT = Aws::String>
52 CreateEksAnywhereSubscriptionRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
54
56
63 inline const EksAnywhereSubscriptionTerm& GetTerm() const { return m_term; }
64 inline bool TermHasBeenSet() const { return m_termHasBeenSet; }
65 template<typename TermT = EksAnywhereSubscriptionTerm>
66 void SetTerm(TermT&& value) { m_termHasBeenSet = true; m_term = std::forward<TermT>(value); }
67 template<typename TermT = EksAnywhereSubscriptionTerm>
68 CreateEksAnywhereSubscriptionRequest& WithTerm(TermT&& value) { SetTerm(std::forward<TermT>(value)); return *this;}
70
72
77 inline int GetLicenseQuantity() const { return m_licenseQuantity; }
78 inline bool LicenseQuantityHasBeenSet() const { return m_licenseQuantityHasBeenSet; }
79 inline void SetLicenseQuantity(int value) { m_licenseQuantityHasBeenSet = true; m_licenseQuantity = value; }
82
84
89 inline EksAnywhereSubscriptionLicenseType GetLicenseType() const { return m_licenseType; }
90 inline bool LicenseTypeHasBeenSet() const { return m_licenseTypeHasBeenSet; }
91 inline void SetLicenseType(EksAnywhereSubscriptionLicenseType value) { m_licenseTypeHasBeenSet = true; m_licenseType = value; }
94
96
100 inline bool GetAutoRenew() const { return m_autoRenew; }
101 inline bool AutoRenewHasBeenSet() const { return m_autoRenewHasBeenSet; }
102 inline void SetAutoRenew(bool value) { m_autoRenewHasBeenSet = true; m_autoRenew = value; }
103 inline CreateEksAnywhereSubscriptionRequest& WithAutoRenew(bool value) { SetAutoRenew(value); return *this;}
105
107
111 inline const Aws::String& GetClientRequestToken() const { return m_clientRequestToken; }
112 inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; }
113 template<typename ClientRequestTokenT = Aws::String>
114 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
115 template<typename ClientRequestTokenT = Aws::String>
116 CreateEksAnywhereSubscriptionRequest& WithClientRequestToken(ClientRequestTokenT&& value) { SetClientRequestToken(std::forward<ClientRequestTokenT>(value)); return *this;}
118
120
126 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
127 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
128 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
129 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
130 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
131 CreateEksAnywhereSubscriptionRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
132 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
133 CreateEksAnywhereSubscriptionRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
134 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
135 }
137 private:
138
139 Aws::String m_name;
140 bool m_nameHasBeenSet = false;
141
143 bool m_termHasBeenSet = false;
144
145 int m_licenseQuantity{0};
146 bool m_licenseQuantityHasBeenSet = false;
147
149 bool m_licenseTypeHasBeenSet = false;
150
151 bool m_autoRenew{false};
152 bool m_autoRenewHasBeenSet = false;
153
154 Aws::String m_clientRequestToken{Aws::Utils::UUID::PseudoRandomUUID()};
155 bool m_clientRequestTokenHasBeenSet = true;
156
158 bool m_tagsHasBeenSet = false;
159 };
160
161} // namespace Model
162} // namespace EKS
163} // 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