AWS SDK for C++

AWS SDK for C++ Version 1.11.754

Loading...
Searching...
No Matches
CreateDirectoryRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ds/DirectoryServiceRequest.h>
10#include <aws/ds/DirectoryService_EXPORTS.h>
11#include <aws/ds/model/DirectorySize.h>
12#include <aws/ds/model/DirectoryVpcSettings.h>
13#include <aws/ds/model/NetworkType.h>
14#include <aws/ds/model/Tag.h>
15
16#include <utility>
17
18namespace Aws {
19namespace DirectoryService {
20namespace Model {
21
29 public:
30 AWS_DIRECTORYSERVICE_API CreateDirectoryRequest() = 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 "CreateDirectory"; }
37
38 AWS_DIRECTORYSERVICE_API Aws::String SerializePayload() const override;
39
40 AWS_DIRECTORYSERVICE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
41
43
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) {
51 m_nameHasBeenSet = true;
52 m_name = std::forward<NameT>(value);
53 }
54 template <typename NameT = Aws::String>
56 SetName(std::forward<NameT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetShortName() const { return m_shortName; }
66 inline bool ShortNameHasBeenSet() const { return m_shortNameHasBeenSet; }
67 template <typename ShortNameT = Aws::String>
68 void SetShortName(ShortNameT&& value) {
69 m_shortNameHasBeenSet = true;
70 m_shortName = std::forward<ShortNameT>(value);
71 }
72 template <typename ShortNameT = Aws::String>
74 SetShortName(std::forward<ShortNameT>(value));
75 return *this;
76 }
78
80
99 inline const Aws::String& GetPassword() const { return m_password; }
100 inline bool PasswordHasBeenSet() const { return m_passwordHasBeenSet; }
101 template <typename PasswordT = Aws::String>
102 void SetPassword(PasswordT&& value) {
103 m_passwordHasBeenSet = true;
104 m_password = std::forward<PasswordT>(value);
105 }
106 template <typename PasswordT = Aws::String>
108 SetPassword(std::forward<PasswordT>(value));
109 return *this;
110 }
112
114
117 inline const Aws::String& GetDescription() const { return m_description; }
118 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
119 template <typename DescriptionT = Aws::String>
120 void SetDescription(DescriptionT&& value) {
121 m_descriptionHasBeenSet = true;
122 m_description = std::forward<DescriptionT>(value);
123 }
124 template <typename DescriptionT = Aws::String>
126 SetDescription(std::forward<DescriptionT>(value));
127 return *this;
128 }
130
132
135 inline DirectorySize GetSize() const { return m_size; }
136 inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; }
137 inline void SetSize(DirectorySize value) {
138 m_sizeHasBeenSet = true;
139 m_size = value;
140 }
142 SetSize(value);
143 return *this;
144 }
146
148
152 inline const DirectoryVpcSettings& GetVpcSettings() const { return m_vpcSettings; }
153 inline bool VpcSettingsHasBeenSet() const { return m_vpcSettingsHasBeenSet; }
154 template <typename VpcSettingsT = DirectoryVpcSettings>
155 void SetVpcSettings(VpcSettingsT&& value) {
156 m_vpcSettingsHasBeenSet = true;
157 m_vpcSettings = std::forward<VpcSettingsT>(value);
158 }
159 template <typename VpcSettingsT = DirectoryVpcSettings>
161 SetVpcSettings(std::forward<VpcSettingsT>(value));
162 return *this;
163 }
165
167
170 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
171 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
172 template <typename TagsT = Aws::Vector<Tag>>
173 void SetTags(TagsT&& value) {
174 m_tagsHasBeenSet = true;
175 m_tags = std::forward<TagsT>(value);
176 }
177 template <typename TagsT = Aws::Vector<Tag>>
179 SetTags(std::forward<TagsT>(value));
180 return *this;
181 }
182 template <typename TagsT = Tag>
184 m_tagsHasBeenSet = true;
185 m_tags.emplace_back(std::forward<TagsT>(value));
186 return *this;
187 }
189
191
195 inline NetworkType GetNetworkType() const { return m_networkType; }
196 inline bool NetworkTypeHasBeenSet() const { return m_networkTypeHasBeenSet; }
197 inline void SetNetworkType(NetworkType value) {
198 m_networkTypeHasBeenSet = true;
199 m_networkType = value;
200 }
202 SetNetworkType(value);
203 return *this;
204 }
206 private:
207 Aws::String m_name;
208
209 Aws::String m_shortName;
210
211 Aws::String m_password;
212
213 Aws::String m_description;
214
216
217 DirectoryVpcSettings m_vpcSettings;
218
219 Aws::Vector<Tag> m_tags;
220
221 NetworkType m_networkType{NetworkType::NOT_SET};
222 bool m_nameHasBeenSet = false;
223 bool m_shortNameHasBeenSet = false;
224 bool m_passwordHasBeenSet = false;
225 bool m_descriptionHasBeenSet = false;
226 bool m_sizeHasBeenSet = false;
227 bool m_vpcSettingsHasBeenSet = false;
228 bool m_tagsHasBeenSet = false;
229 bool m_networkTypeHasBeenSet = false;
230};
231
232} // namespace Model
233} // namespace DirectoryService
234} // namespace Aws
CreateDirectoryRequest & WithPassword(PasswordT &&value)
CreateDirectoryRequest & WithShortName(ShortNameT &&value)
AWS_DIRECTORYSERVICE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateDirectoryRequest & WithDescription(DescriptionT &&value)
virtual const char * GetServiceRequestName() const override
AWS_DIRECTORYSERVICE_API Aws::String SerializePayload() const override
CreateDirectoryRequest & WithSize(DirectorySize value)
CreateDirectoryRequest & WithVpcSettings(VpcSettingsT &&value)
CreateDirectoryRequest & WithNetworkType(NetworkType value)
AWS_DIRECTORYSERVICE_API CreateDirectoryRequest()=default
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