AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateKxVolumeRequest.h
1
6#pragma once
7#include <aws/finspace/Finspace_EXPORTS.h>
8#include <aws/finspace/FinspaceRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/finspace/model/KxVolumeType.h>
11#include <aws/finspace/model/KxNAS1Configuration.h>
12#include <aws/finspace/model/KxAzMode.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/core/utils/memory/stl/AWSMap.h>
15#include <utility>
16#include <aws/core/utils/UUID.h>
17
18namespace Aws
19{
20namespace finspace
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_FINSPACE_API CreateKxVolumeRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateKxVolume"; }
37
38 AWS_FINSPACE_API Aws::String SerializePayload() const override;
39
40
42
45 inline const Aws::String& GetClientToken() const { return m_clientToken; }
46 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
47 template<typename ClientTokenT = Aws::String>
48 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
49 template<typename ClientTokenT = Aws::String>
50 CreateKxVolumeRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
52
54
58 inline const Aws::String& GetEnvironmentId() const { return m_environmentId; }
59 inline bool EnvironmentIdHasBeenSet() const { return m_environmentIdHasBeenSet; }
60 template<typename EnvironmentIdT = Aws::String>
61 void SetEnvironmentId(EnvironmentIdT&& value) { m_environmentIdHasBeenSet = true; m_environmentId = std::forward<EnvironmentIdT>(value); }
62 template<typename EnvironmentIdT = Aws::String>
63 CreateKxVolumeRequest& WithEnvironmentId(EnvironmentIdT&& value) { SetEnvironmentId(std::forward<EnvironmentIdT>(value)); return *this;}
65
67
72 inline KxVolumeType GetVolumeType() const { return m_volumeType; }
73 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
74 inline void SetVolumeType(KxVolumeType value) { m_volumeTypeHasBeenSet = true; m_volumeType = value; }
75 inline CreateKxVolumeRequest& WithVolumeType(KxVolumeType value) { SetVolumeType(value); return *this;}
77
79
82 inline const Aws::String& GetVolumeName() const { return m_volumeName; }
83 inline bool VolumeNameHasBeenSet() const { return m_volumeNameHasBeenSet; }
84 template<typename VolumeNameT = Aws::String>
85 void SetVolumeName(VolumeNameT&& value) { m_volumeNameHasBeenSet = true; m_volumeName = std::forward<VolumeNameT>(value); }
86 template<typename VolumeNameT = Aws::String>
87 CreateKxVolumeRequest& WithVolumeName(VolumeNameT&& value) { SetVolumeName(std::forward<VolumeNameT>(value)); return *this;}
89
91
94 inline const Aws::String& GetDescription() const { return m_description; }
95 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
96 template<typename DescriptionT = Aws::String>
97 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
98 template<typename DescriptionT = Aws::String>
99 CreateKxVolumeRequest& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
101
103
108 inline const KxNAS1Configuration& GetNas1Configuration() const { return m_nas1Configuration; }
109 inline bool Nas1ConfigurationHasBeenSet() const { return m_nas1ConfigurationHasBeenSet; }
110 template<typename Nas1ConfigurationT = KxNAS1Configuration>
111 void SetNas1Configuration(Nas1ConfigurationT&& value) { m_nas1ConfigurationHasBeenSet = true; m_nas1Configuration = std::forward<Nas1ConfigurationT>(value); }
112 template<typename Nas1ConfigurationT = KxNAS1Configuration>
113 CreateKxVolumeRequest& WithNas1Configuration(Nas1ConfigurationT&& value) { SetNas1Configuration(std::forward<Nas1ConfigurationT>(value)); return *this;}
115
117
122 inline KxAzMode GetAzMode() const { return m_azMode; }
123 inline bool AzModeHasBeenSet() const { return m_azModeHasBeenSet; }
124 inline void SetAzMode(KxAzMode value) { m_azModeHasBeenSet = true; m_azMode = value; }
125 inline CreateKxVolumeRequest& WithAzMode(KxAzMode value) { SetAzMode(value); return *this;}
127
129
132 inline const Aws::Vector<Aws::String>& GetAvailabilityZoneIds() const { return m_availabilityZoneIds; }
133 inline bool AvailabilityZoneIdsHasBeenSet() const { return m_availabilityZoneIdsHasBeenSet; }
134 template<typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
135 void SetAvailabilityZoneIds(AvailabilityZoneIdsT&& value) { m_availabilityZoneIdsHasBeenSet = true; m_availabilityZoneIds = std::forward<AvailabilityZoneIdsT>(value); }
136 template<typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
137 CreateKxVolumeRequest& WithAvailabilityZoneIds(AvailabilityZoneIdsT&& value) { SetAvailabilityZoneIds(std::forward<AvailabilityZoneIdsT>(value)); return *this;}
138 template<typename AvailabilityZoneIdsT = Aws::String>
139 CreateKxVolumeRequest& AddAvailabilityZoneIds(AvailabilityZoneIdsT&& value) { m_availabilityZoneIdsHasBeenSet = true; m_availabilityZoneIds.emplace_back(std::forward<AvailabilityZoneIdsT>(value)); return *this; }
141
143
147 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
148 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
149 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
150 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
151 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
152 CreateKxVolumeRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
153 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
154 CreateKxVolumeRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
155 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
156 }
158 private:
159
161 bool m_clientTokenHasBeenSet = true;
162
163 Aws::String m_environmentId;
164 bool m_environmentIdHasBeenSet = false;
165
167 bool m_volumeTypeHasBeenSet = false;
168
169 Aws::String m_volumeName;
170 bool m_volumeNameHasBeenSet = false;
171
172 Aws::String m_description;
173 bool m_descriptionHasBeenSet = false;
174
175 KxNAS1Configuration m_nas1Configuration;
176 bool m_nas1ConfigurationHasBeenSet = false;
177
178 KxAzMode m_azMode{KxAzMode::NOT_SET};
179 bool m_azModeHasBeenSet = false;
180
181 Aws::Vector<Aws::String> m_availabilityZoneIds;
182 bool m_availabilityZoneIdsHasBeenSet = false;
183
185 bool m_tagsHasBeenSet = false;
186 };
187
188} // namespace Model
189} // namespace finspace
190} // 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