AWS SDK for C++

AWS SDK for C++ Version 1.11.718

Loading...
Searching...
No Matches
CreateStudioRequest.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/elasticmapreduce/EMRRequest.h>
10#include <aws/elasticmapreduce/EMR_EXPORTS.h>
11#include <aws/elasticmapreduce/model/AuthMode.h>
12#include <aws/elasticmapreduce/model/IdcUserAssignment.h>
13#include <aws/elasticmapreduce/model/Tag.h>
14
15#include <utility>
16
17namespace Aws {
18namespace EMR {
19namespace Model {
20
24 public:
25 AWS_EMR_API CreateStudioRequest() = 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 "CreateStudio"; }
32
33 AWS_EMR_API Aws::String SerializePayload() const override;
34
36
38
41 inline const Aws::String& GetName() const { return m_name; }
42 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
43 template <typename NameT = Aws::String>
44 void SetName(NameT&& value) {
45 m_nameHasBeenSet = true;
46 m_name = std::forward<NameT>(value);
47 }
48 template <typename NameT = Aws::String>
49 CreateStudioRequest& WithName(NameT&& value) {
50 SetName(std::forward<NameT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetDescription() const { return m_description; }
60 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
61 template <typename DescriptionT = Aws::String>
62 void SetDescription(DescriptionT&& value) {
63 m_descriptionHasBeenSet = true;
64 m_description = std::forward<DescriptionT>(value);
65 }
66 template <typename DescriptionT = Aws::String>
67 CreateStudioRequest& WithDescription(DescriptionT&& value) {
68 SetDescription(std::forward<DescriptionT>(value));
69 return *this;
70 }
72
74
78 inline AuthMode GetAuthMode() const { return m_authMode; }
79 inline bool AuthModeHasBeenSet() const { return m_authModeHasBeenSet; }
80 inline void SetAuthMode(AuthMode value) {
81 m_authModeHasBeenSet = true;
82 m_authMode = value;
83 }
85 SetAuthMode(value);
86 return *this;
87 }
89
91
95 inline const Aws::String& GetVpcId() const { return m_vpcId; }
96 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
97 template <typename VpcIdT = Aws::String>
98 void SetVpcId(VpcIdT&& value) {
99 m_vpcIdHasBeenSet = true;
100 m_vpcId = std::forward<VpcIdT>(value);
101 }
102 template <typename VpcIdT = Aws::String>
104 SetVpcId(std::forward<VpcIdT>(value));
105 return *this;
106 }
108
110
116 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
117 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
118 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
119 void SetSubnetIds(SubnetIdsT&& value) {
120 m_subnetIdsHasBeenSet = true;
121 m_subnetIds = std::forward<SubnetIdsT>(value);
122 }
123 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
124 CreateStudioRequest& WithSubnetIds(SubnetIdsT&& value) {
125 SetSubnetIds(std::forward<SubnetIdsT>(value));
126 return *this;
127 }
128 template <typename SubnetIdsT = Aws::String>
129 CreateStudioRequest& AddSubnetIds(SubnetIdsT&& value) {
130 m_subnetIdsHasBeenSet = true;
131 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
132 return *this;
133 }
135
137
142 inline const Aws::String& GetServiceRole() const { return m_serviceRole; }
143 inline bool ServiceRoleHasBeenSet() const { return m_serviceRoleHasBeenSet; }
144 template <typename ServiceRoleT = Aws::String>
145 void SetServiceRole(ServiceRoleT&& value) {
146 m_serviceRoleHasBeenSet = true;
147 m_serviceRole = std::forward<ServiceRoleT>(value);
148 }
149 template <typename ServiceRoleT = Aws::String>
150 CreateStudioRequest& WithServiceRole(ServiceRoleT&& value) {
151 SetServiceRole(std::forward<ServiceRoleT>(value));
152 return *this;
153 }
155
157
163 inline const Aws::String& GetUserRole() const { return m_userRole; }
164 inline bool UserRoleHasBeenSet() const { return m_userRoleHasBeenSet; }
165 template <typename UserRoleT = Aws::String>
166 void SetUserRole(UserRoleT&& value) {
167 m_userRoleHasBeenSet = true;
168 m_userRole = std::forward<UserRoleT>(value);
169 }
170 template <typename UserRoleT = Aws::String>
171 CreateStudioRequest& WithUserRole(UserRoleT&& value) {
172 SetUserRole(std::forward<UserRoleT>(value));
173 return *this;
174 }
176
178
184 inline const Aws::String& GetWorkspaceSecurityGroupId() const { return m_workspaceSecurityGroupId; }
185 inline bool WorkspaceSecurityGroupIdHasBeenSet() const { return m_workspaceSecurityGroupIdHasBeenSet; }
186 template <typename WorkspaceSecurityGroupIdT = Aws::String>
187 void SetWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT&& value) {
188 m_workspaceSecurityGroupIdHasBeenSet = true;
189 m_workspaceSecurityGroupId = std::forward<WorkspaceSecurityGroupIdT>(value);
190 }
191 template <typename WorkspaceSecurityGroupIdT = Aws::String>
192 CreateStudioRequest& WithWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT&& value) {
193 SetWorkspaceSecurityGroupId(std::forward<WorkspaceSecurityGroupIdT>(value));
194 return *this;
195 }
197
199
204 inline const Aws::String& GetEngineSecurityGroupId() const { return m_engineSecurityGroupId; }
205 inline bool EngineSecurityGroupIdHasBeenSet() const { return m_engineSecurityGroupIdHasBeenSet; }
206 template <typename EngineSecurityGroupIdT = Aws::String>
207 void SetEngineSecurityGroupId(EngineSecurityGroupIdT&& value) {
208 m_engineSecurityGroupIdHasBeenSet = true;
209 m_engineSecurityGroupId = std::forward<EngineSecurityGroupIdT>(value);
210 }
211 template <typename EngineSecurityGroupIdT = Aws::String>
212 CreateStudioRequest& WithEngineSecurityGroupId(EngineSecurityGroupIdT&& value) {
213 SetEngineSecurityGroupId(std::forward<EngineSecurityGroupIdT>(value));
214 return *this;
215 }
217
219
223 inline const Aws::String& GetDefaultS3Location() const { return m_defaultS3Location; }
224 inline bool DefaultS3LocationHasBeenSet() const { return m_defaultS3LocationHasBeenSet; }
225 template <typename DefaultS3LocationT = Aws::String>
226 void SetDefaultS3Location(DefaultS3LocationT&& value) {
227 m_defaultS3LocationHasBeenSet = true;
228 m_defaultS3Location = std::forward<DefaultS3LocationT>(value);
229 }
230 template <typename DefaultS3LocationT = Aws::String>
231 CreateStudioRequest& WithDefaultS3Location(DefaultS3LocationT&& value) {
232 SetDefaultS3Location(std::forward<DefaultS3LocationT>(value));
233 return *this;
234 }
236
238
244 inline const Aws::String& GetIdpAuthUrl() const { return m_idpAuthUrl; }
245 inline bool IdpAuthUrlHasBeenSet() const { return m_idpAuthUrlHasBeenSet; }
246 template <typename IdpAuthUrlT = Aws::String>
247 void SetIdpAuthUrl(IdpAuthUrlT&& value) {
248 m_idpAuthUrlHasBeenSet = true;
249 m_idpAuthUrl = std::forward<IdpAuthUrlT>(value);
250 }
251 template <typename IdpAuthUrlT = Aws::String>
252 CreateStudioRequest& WithIdpAuthUrl(IdpAuthUrlT&& value) {
253 SetIdpAuthUrl(std::forward<IdpAuthUrlT>(value));
254 return *this;
255 }
257
259
266 inline const Aws::String& GetIdpRelayStateParameterName() const { return m_idpRelayStateParameterName; }
267 inline bool IdpRelayStateParameterNameHasBeenSet() const { return m_idpRelayStateParameterNameHasBeenSet; }
268 template <typename IdpRelayStateParameterNameT = Aws::String>
269 void SetIdpRelayStateParameterName(IdpRelayStateParameterNameT&& value) {
270 m_idpRelayStateParameterNameHasBeenSet = true;
271 m_idpRelayStateParameterName = std::forward<IdpRelayStateParameterNameT>(value);
272 }
273 template <typename IdpRelayStateParameterNameT = Aws::String>
274 CreateStudioRequest& WithIdpRelayStateParameterName(IdpRelayStateParameterNameT&& value) {
275 SetIdpRelayStateParameterName(std::forward<IdpRelayStateParameterNameT>(value));
276 return *this;
277 }
279
281
286 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
287 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
288 template <typename TagsT = Aws::Vector<Tag>>
289 void SetTags(TagsT&& value) {
290 m_tagsHasBeenSet = true;
291 m_tags = std::forward<TagsT>(value);
292 }
293 template <typename TagsT = Aws::Vector<Tag>>
295 SetTags(std::forward<TagsT>(value));
296 return *this;
297 }
298 template <typename TagsT = Tag>
299 CreateStudioRequest& AddTags(TagsT&& value) {
300 m_tagsHasBeenSet = true;
301 m_tags.emplace_back(std::forward<TagsT>(value));
302 return *this;
303 }
305
307
311 inline bool GetTrustedIdentityPropagationEnabled() const { return m_trustedIdentityPropagationEnabled; }
312 inline bool TrustedIdentityPropagationEnabledHasBeenSet() const { return m_trustedIdentityPropagationEnabledHasBeenSet; }
313 inline void SetTrustedIdentityPropagationEnabled(bool value) {
314 m_trustedIdentityPropagationEnabledHasBeenSet = true;
315 m_trustedIdentityPropagationEnabled = value;
316 }
319 return *this;
320 }
322
324
330 inline IdcUserAssignment GetIdcUserAssignment() const { return m_idcUserAssignment; }
331 inline bool IdcUserAssignmentHasBeenSet() const { return m_idcUserAssignmentHasBeenSet; }
333 m_idcUserAssignmentHasBeenSet = true;
334 m_idcUserAssignment = value;
335 }
338 return *this;
339 }
341
343
347 inline const Aws::String& GetIdcInstanceArn() const { return m_idcInstanceArn; }
348 inline bool IdcInstanceArnHasBeenSet() const { return m_idcInstanceArnHasBeenSet; }
349 template <typename IdcInstanceArnT = Aws::String>
350 void SetIdcInstanceArn(IdcInstanceArnT&& value) {
351 m_idcInstanceArnHasBeenSet = true;
352 m_idcInstanceArn = std::forward<IdcInstanceArnT>(value);
353 }
354 template <typename IdcInstanceArnT = Aws::String>
355 CreateStudioRequest& WithIdcInstanceArn(IdcInstanceArnT&& value) {
356 SetIdcInstanceArn(std::forward<IdcInstanceArnT>(value));
357 return *this;
358 }
360
362
366 inline const Aws::String& GetEncryptionKeyArn() const { return m_encryptionKeyArn; }
367 inline bool EncryptionKeyArnHasBeenSet() const { return m_encryptionKeyArnHasBeenSet; }
368 template <typename EncryptionKeyArnT = Aws::String>
369 void SetEncryptionKeyArn(EncryptionKeyArnT&& value) {
370 m_encryptionKeyArnHasBeenSet = true;
371 m_encryptionKeyArn = std::forward<EncryptionKeyArnT>(value);
372 }
373 template <typename EncryptionKeyArnT = Aws::String>
374 CreateStudioRequest& WithEncryptionKeyArn(EncryptionKeyArnT&& value) {
375 SetEncryptionKeyArn(std::forward<EncryptionKeyArnT>(value));
376 return *this;
377 }
379 private:
380 Aws::String m_name;
381
382 Aws::String m_description;
383
384 AuthMode m_authMode{AuthMode::NOT_SET};
385
386 Aws::String m_vpcId;
387
388 Aws::Vector<Aws::String> m_subnetIds;
389
390 Aws::String m_serviceRole;
391
392 Aws::String m_userRole;
393
394 Aws::String m_workspaceSecurityGroupId;
395
396 Aws::String m_engineSecurityGroupId;
397
398 Aws::String m_defaultS3Location;
399
400 Aws::String m_idpAuthUrl;
401
402 Aws::String m_idpRelayStateParameterName;
403
404 Aws::Vector<Tag> m_tags;
405
406 bool m_trustedIdentityPropagationEnabled{false};
407
409
410 Aws::String m_idcInstanceArn;
411
412 Aws::String m_encryptionKeyArn;
413 bool m_nameHasBeenSet = false;
414 bool m_descriptionHasBeenSet = false;
415 bool m_authModeHasBeenSet = false;
416 bool m_vpcIdHasBeenSet = false;
417 bool m_subnetIdsHasBeenSet = false;
418 bool m_serviceRoleHasBeenSet = false;
419 bool m_userRoleHasBeenSet = false;
420 bool m_workspaceSecurityGroupIdHasBeenSet = false;
421 bool m_engineSecurityGroupIdHasBeenSet = false;
422 bool m_defaultS3LocationHasBeenSet = false;
423 bool m_idpAuthUrlHasBeenSet = false;
424 bool m_idpRelayStateParameterNameHasBeenSet = false;
425 bool m_tagsHasBeenSet = false;
426 bool m_trustedIdentityPropagationEnabledHasBeenSet = false;
427 bool m_idcUserAssignmentHasBeenSet = false;
428 bool m_idcInstanceArnHasBeenSet = false;
429 bool m_encryptionKeyArnHasBeenSet = false;
430};
431
432} // namespace Model
433} // namespace EMR
434} // namespace Aws
const Aws::String & GetUserRole() const
const Aws::String & GetWorkspaceSecurityGroupId() const
const Aws::String & GetIdcInstanceArn() const
AWS_EMR_API CreateStudioRequest()=default
CreateStudioRequest & WithVpcId(VpcIdT &&value)
const Aws::String & GetEncryptionKeyArn() const
CreateStudioRequest & WithTags(TagsT &&value)
const Aws::String & GetDescription() const
CreateStudioRequest & WithTrustedIdentityPropagationEnabled(bool value)
void SetDefaultS3Location(DefaultS3LocationT &&value)
const Aws::String & GetServiceRole() const
const Aws::Vector< Tag > & GetTags() const
CreateStudioRequest & WithIdpAuthUrl(IdpAuthUrlT &&value)
AWS_EMR_API Aws::String SerializePayload() const override
CreateStudioRequest & WithSubnetIds(SubnetIdsT &&value)
const Aws::String & GetName() const
AWS_EMR_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateStudioRequest & WithUserRole(UserRoleT &&value)
void SetIdpRelayStateParameterName(IdpRelayStateParameterNameT &&value)
const Aws::String & GetEngineSecurityGroupId() const
IdcUserAssignment GetIdcUserAssignment() const
const Aws::String & GetVpcId() const
CreateStudioRequest & WithName(NameT &&value)
CreateStudioRequest & WithIdpRelayStateParameterName(IdpRelayStateParameterNameT &&value)
void SetServiceRole(ServiceRoleT &&value)
CreateStudioRequest & WithEncryptionKeyArn(EncryptionKeyArnT &&value)
CreateStudioRequest & WithWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT &&value)
void SetIdcUserAssignment(IdcUserAssignment value)
void SetEngineSecurityGroupId(EngineSecurityGroupIdT &&value)
CreateStudioRequest & WithEngineSecurityGroupId(EngineSecurityGroupIdT &&value)
virtual const char * GetServiceRequestName() const override
CreateStudioRequest & AddSubnetIds(SubnetIdsT &&value)
void SetWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT &&value)
CreateStudioRequest & WithDefaultS3Location(DefaultS3LocationT &&value)
CreateStudioRequest & WithIdcInstanceArn(IdcInstanceArnT &&value)
CreateStudioRequest & WithServiceRole(ServiceRoleT &&value)
void SetIdcInstanceArn(IdcInstanceArnT &&value)
void SetEncryptionKeyArn(EncryptionKeyArnT &&value)
CreateStudioRequest & WithDescription(DescriptionT &&value)
const Aws::String & GetDefaultS3Location() const
CreateStudioRequest & AddTags(TagsT &&value)
const Aws::String & GetIdpRelayStateParameterName() const
void SetDescription(DescriptionT &&value)
CreateStudioRequest & WithIdcUserAssignment(IdcUserAssignment value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
CreateStudioRequest & WithAuthMode(AuthMode value)
const Aws::String & GetIdpAuthUrl() const
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