AWS SDK for C++

AWS SDK for C++ Version 1.11.688

Loading...
Searching...
No Matches
CreateKxVolumeRequest.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/core/utils/memory/stl/AWSVector.h>
11#include <aws/finspace/FinspaceRequest.h>
12#include <aws/finspace/Finspace_EXPORTS.h>
13#include <aws/finspace/model/KxAzMode.h>
14#include <aws/finspace/model/KxNAS1Configuration.h>
15#include <aws/finspace/model/KxVolumeType.h>
16
17#include <utility>
18
19namespace Aws {
20namespace finspace {
21namespace Model {
22
26 public:
27 AWS_FINSPACE_API CreateKxVolumeRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateKxVolume"; }
34
35 AWS_FINSPACE_API Aws::String SerializePayload() const override;
36
38
41 inline const Aws::String& GetClientToken() const { return m_clientToken; }
42 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
43 template <typename ClientTokenT = Aws::String>
44 void SetClientToken(ClientTokenT&& value) {
45 m_clientTokenHasBeenSet = true;
46 m_clientToken = std::forward<ClientTokenT>(value);
47 }
48 template <typename ClientTokenT = Aws::String>
49 CreateKxVolumeRequest& WithClientToken(ClientTokenT&& value) {
50 SetClientToken(std::forward<ClientTokenT>(value));
51 return *this;
52 }
54
56
60 inline const Aws::String& GetEnvironmentId() const { return m_environmentId; }
61 inline bool EnvironmentIdHasBeenSet() const { return m_environmentIdHasBeenSet; }
62 template <typename EnvironmentIdT = Aws::String>
63 void SetEnvironmentId(EnvironmentIdT&& value) {
64 m_environmentIdHasBeenSet = true;
65 m_environmentId = std::forward<EnvironmentIdT>(value);
66 }
67 template <typename EnvironmentIdT = Aws::String>
68 CreateKxVolumeRequest& WithEnvironmentId(EnvironmentIdT&& value) {
69 SetEnvironmentId(std::forward<EnvironmentIdT>(value));
70 return *this;
71 }
73
75
80 inline KxVolumeType GetVolumeType() const { return m_volumeType; }
81 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
82 inline void SetVolumeType(KxVolumeType value) {
83 m_volumeTypeHasBeenSet = true;
84 m_volumeType = value;
85 }
87 SetVolumeType(value);
88 return *this;
89 }
91
93
96 inline const Aws::String& GetVolumeName() const { return m_volumeName; }
97 inline bool VolumeNameHasBeenSet() const { return m_volumeNameHasBeenSet; }
98 template <typename VolumeNameT = Aws::String>
99 void SetVolumeName(VolumeNameT&& value) {
100 m_volumeNameHasBeenSet = true;
101 m_volumeName = std::forward<VolumeNameT>(value);
102 }
103 template <typename VolumeNameT = Aws::String>
104 CreateKxVolumeRequest& WithVolumeName(VolumeNameT&& value) {
105 SetVolumeName(std::forward<VolumeNameT>(value));
106 return *this;
107 }
109
111
114 inline const Aws::String& GetDescription() const { return m_description; }
115 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
116 template <typename DescriptionT = Aws::String>
117 void SetDescription(DescriptionT&& value) {
118 m_descriptionHasBeenSet = true;
119 m_description = std::forward<DescriptionT>(value);
120 }
121 template <typename DescriptionT = Aws::String>
122 CreateKxVolumeRequest& WithDescription(DescriptionT&& value) {
123 SetDescription(std::forward<DescriptionT>(value));
124 return *this;
125 }
127
129
134 inline const KxNAS1Configuration& GetNas1Configuration() const { return m_nas1Configuration; }
135 inline bool Nas1ConfigurationHasBeenSet() const { return m_nas1ConfigurationHasBeenSet; }
136 template <typename Nas1ConfigurationT = KxNAS1Configuration>
137 void SetNas1Configuration(Nas1ConfigurationT&& value) {
138 m_nas1ConfigurationHasBeenSet = true;
139 m_nas1Configuration = std::forward<Nas1ConfigurationT>(value);
140 }
141 template <typename Nas1ConfigurationT = KxNAS1Configuration>
142 CreateKxVolumeRequest& WithNas1Configuration(Nas1ConfigurationT&& value) {
143 SetNas1Configuration(std::forward<Nas1ConfigurationT>(value));
144 return *this;
145 }
147
149
154 inline KxAzMode GetAzMode() const { return m_azMode; }
155 inline bool AzModeHasBeenSet() const { return m_azModeHasBeenSet; }
156 inline void SetAzMode(KxAzMode value) {
157 m_azModeHasBeenSet = true;
158 m_azMode = value;
159 }
161 SetAzMode(value);
162 return *this;
163 }
165
167
170 inline const Aws::Vector<Aws::String>& GetAvailabilityZoneIds() const { return m_availabilityZoneIds; }
171 inline bool AvailabilityZoneIdsHasBeenSet() const { return m_availabilityZoneIdsHasBeenSet; }
172 template <typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
173 void SetAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
174 m_availabilityZoneIdsHasBeenSet = true;
175 m_availabilityZoneIds = std::forward<AvailabilityZoneIdsT>(value);
176 }
177 template <typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
178 CreateKxVolumeRequest& WithAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
179 SetAvailabilityZoneIds(std::forward<AvailabilityZoneIdsT>(value));
180 return *this;
181 }
182 template <typename AvailabilityZoneIdsT = Aws::String>
183 CreateKxVolumeRequest& AddAvailabilityZoneIds(AvailabilityZoneIdsT&& value) {
184 m_availabilityZoneIdsHasBeenSet = true;
185 m_availabilityZoneIds.emplace_back(std::forward<AvailabilityZoneIdsT>(value));
186 return *this;
187 }
189
191
195 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
196 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
197 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
198 void SetTags(TagsT&& value) {
199 m_tagsHasBeenSet = true;
200 m_tags = std::forward<TagsT>(value);
201 }
202 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
204 SetTags(std::forward<TagsT>(value));
205 return *this;
206 }
207 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
208 CreateKxVolumeRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
209 m_tagsHasBeenSet = true;
210 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
211 return *this;
212 }
214 private:
216 bool m_clientTokenHasBeenSet = true;
217
218 Aws::String m_environmentId;
219 bool m_environmentIdHasBeenSet = false;
220
222 bool m_volumeTypeHasBeenSet = false;
223
224 Aws::String m_volumeName;
225 bool m_volumeNameHasBeenSet = false;
226
227 Aws::String m_description;
228 bool m_descriptionHasBeenSet = false;
229
230 KxNAS1Configuration m_nas1Configuration;
231 bool m_nas1ConfigurationHasBeenSet = false;
232
233 KxAzMode m_azMode{KxAzMode::NOT_SET};
234 bool m_azModeHasBeenSet = false;
235
236 Aws::Vector<Aws::String> m_availabilityZoneIds;
237 bool m_availabilityZoneIdsHasBeenSet = false;
238
240 bool m_tagsHasBeenSet = false;
241};
242
243} // namespace Model
244} // namespace finspace
245} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
CreateKxVolumeRequest & WithTags(TagsT &&value)
AWS_FINSPACE_API Aws::String SerializePayload() const override
CreateKxVolumeRequest & WithClientToken(ClientTokenT &&value)
CreateKxVolumeRequest & WithDescription(DescriptionT &&value)
CreateKxVolumeRequest & WithEnvironmentId(EnvironmentIdT &&value)
CreateKxVolumeRequest & WithAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
void SetAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
CreateKxVolumeRequest & WithVolumeName(VolumeNameT &&value)
CreateKxVolumeRequest & WithAzMode(KxAzMode value)
virtual const char * GetServiceRequestName() const override
CreateKxVolumeRequest & AddAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_FINSPACE_API CreateKxVolumeRequest()=default
const KxNAS1Configuration & GetNas1Configuration() const
CreateKxVolumeRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateKxVolumeRequest & WithNas1Configuration(Nas1ConfigurationT &&value)
CreateKxVolumeRequest & WithVolumeType(KxVolumeType value)
void SetNas1Configuration(Nas1ConfigurationT &&value)
const Aws::Vector< Aws::String > & GetAvailabilityZoneIds() const
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
std::vector< T, Aws::Allocator< T > > Vector