AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
Studio.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.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 Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace EMR {
25namespace Model {
26
33class Studio {
34 public:
35 AWS_EMR_API Studio() = default;
36 AWS_EMR_API Studio(Aws::Utils::Json::JsonView jsonValue);
39
41
44 inline const Aws::String& GetStudioId() const { return m_studioId; }
45 inline bool StudioIdHasBeenSet() const { return m_studioIdHasBeenSet; }
46 template <typename StudioIdT = Aws::String>
47 void SetStudioId(StudioIdT&& value) {
48 m_studioIdHasBeenSet = true;
49 m_studioId = std::forward<StudioIdT>(value);
50 }
51 template <typename StudioIdT = Aws::String>
52 Studio& WithStudioId(StudioIdT&& value) {
53 SetStudioId(std::forward<StudioIdT>(value));
54 return *this;
55 }
57
59
62 inline const Aws::String& GetStudioArn() const { return m_studioArn; }
63 inline bool StudioArnHasBeenSet() const { return m_studioArnHasBeenSet; }
64 template <typename StudioArnT = Aws::String>
65 void SetStudioArn(StudioArnT&& value) {
66 m_studioArnHasBeenSet = true;
67 m_studioArn = std::forward<StudioArnT>(value);
68 }
69 template <typename StudioArnT = Aws::String>
70 Studio& WithStudioArn(StudioArnT&& value) {
71 SetStudioArn(std::forward<StudioArnT>(value));
72 return *this;
73 }
75
77
80 inline const Aws::String& GetName() const { return m_name; }
81 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
82 template <typename NameT = Aws::String>
83 void SetName(NameT&& value) {
84 m_nameHasBeenSet = true;
85 m_name = std::forward<NameT>(value);
86 }
87 template <typename NameT = Aws::String>
88 Studio& WithName(NameT&& value) {
89 SetName(std::forward<NameT>(value));
90 return *this;
91 }
93
95
98 inline const Aws::String& GetDescription() const { return m_description; }
99 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
100 template <typename DescriptionT = Aws::String>
101 void SetDescription(DescriptionT&& value) {
102 m_descriptionHasBeenSet = true;
103 m_description = std::forward<DescriptionT>(value);
104 }
105 template <typename DescriptionT = Aws::String>
106 Studio& WithDescription(DescriptionT&& value) {
107 SetDescription(std::forward<DescriptionT>(value));
108 return *this;
109 }
111
113
117 inline AuthMode GetAuthMode() const { return m_authMode; }
118 inline bool AuthModeHasBeenSet() const { return m_authModeHasBeenSet; }
119 inline void SetAuthMode(AuthMode value) {
120 m_authModeHasBeenSet = true;
121 m_authMode = value;
122 }
123 inline Studio& WithAuthMode(AuthMode value) {
124 SetAuthMode(value);
125 return *this;
126 }
128
130
133 inline const Aws::String& GetVpcId() const { return m_vpcId; }
134 inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; }
135 template <typename VpcIdT = Aws::String>
136 void SetVpcId(VpcIdT&& value) {
137 m_vpcIdHasBeenSet = true;
138 m_vpcId = std::forward<VpcIdT>(value);
139 }
140 template <typename VpcIdT = Aws::String>
141 Studio& WithVpcId(VpcIdT&& value) {
142 SetVpcId(std::forward<VpcIdT>(value));
143 return *this;
144 }
146
148
151 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
152 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
153 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
154 void SetSubnetIds(SubnetIdsT&& value) {
155 m_subnetIdsHasBeenSet = true;
156 m_subnetIds = std::forward<SubnetIdsT>(value);
157 }
158 template <typename SubnetIdsT = Aws::Vector<Aws::String>>
159 Studio& WithSubnetIds(SubnetIdsT&& value) {
160 SetSubnetIds(std::forward<SubnetIdsT>(value));
161 return *this;
162 }
163 template <typename SubnetIdsT = Aws::String>
164 Studio& AddSubnetIds(SubnetIdsT&& value) {
165 m_subnetIdsHasBeenSet = true;
166 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
167 return *this;
168 }
170
172
175 inline const Aws::String& GetServiceRole() const { return m_serviceRole; }
176 inline bool ServiceRoleHasBeenSet() const { return m_serviceRoleHasBeenSet; }
177 template <typename ServiceRoleT = Aws::String>
178 void SetServiceRole(ServiceRoleT&& value) {
179 m_serviceRoleHasBeenSet = true;
180 m_serviceRole = std::forward<ServiceRoleT>(value);
181 }
182 template <typename ServiceRoleT = Aws::String>
183 Studio& WithServiceRole(ServiceRoleT&& value) {
184 SetServiceRole(std::forward<ServiceRoleT>(value));
185 return *this;
186 }
188
190
195 inline const Aws::String& GetUserRole() const { return m_userRole; }
196 inline bool UserRoleHasBeenSet() const { return m_userRoleHasBeenSet; }
197 template <typename UserRoleT = Aws::String>
198 void SetUserRole(UserRoleT&& value) {
199 m_userRoleHasBeenSet = true;
200 m_userRole = std::forward<UserRoleT>(value);
201 }
202 template <typename UserRoleT = Aws::String>
203 Studio& WithUserRole(UserRoleT&& value) {
204 SetUserRole(std::forward<UserRoleT>(value));
205 return *this;
206 }
208
210
215 inline const Aws::String& GetWorkspaceSecurityGroupId() const { return m_workspaceSecurityGroupId; }
216 inline bool WorkspaceSecurityGroupIdHasBeenSet() const { return m_workspaceSecurityGroupIdHasBeenSet; }
217 template <typename WorkspaceSecurityGroupIdT = Aws::String>
218 void SetWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT&& value) {
219 m_workspaceSecurityGroupIdHasBeenSet = true;
220 m_workspaceSecurityGroupId = std::forward<WorkspaceSecurityGroupIdT>(value);
221 }
222 template <typename WorkspaceSecurityGroupIdT = Aws::String>
223 Studio& WithWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT&& value) {
224 SetWorkspaceSecurityGroupId(std::forward<WorkspaceSecurityGroupIdT>(value));
225 return *this;
226 }
228
230
235 inline const Aws::String& GetEngineSecurityGroupId() const { return m_engineSecurityGroupId; }
236 inline bool EngineSecurityGroupIdHasBeenSet() const { return m_engineSecurityGroupIdHasBeenSet; }
237 template <typename EngineSecurityGroupIdT = Aws::String>
238 void SetEngineSecurityGroupId(EngineSecurityGroupIdT&& value) {
239 m_engineSecurityGroupIdHasBeenSet = true;
240 m_engineSecurityGroupId = std::forward<EngineSecurityGroupIdT>(value);
241 }
242 template <typename EngineSecurityGroupIdT = Aws::String>
243 Studio& WithEngineSecurityGroupId(EngineSecurityGroupIdT&& value) {
244 SetEngineSecurityGroupId(std::forward<EngineSecurityGroupIdT>(value));
245 return *this;
246 }
248
250
253 inline const Aws::String& GetUrl() const { return m_url; }
254 inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; }
255 template <typename UrlT = Aws::String>
256 void SetUrl(UrlT&& value) {
257 m_urlHasBeenSet = true;
258 m_url = std::forward<UrlT>(value);
259 }
260 template <typename UrlT = Aws::String>
261 Studio& WithUrl(UrlT&& value) {
262 SetUrl(std::forward<UrlT>(value));
263 return *this;
264 }
266
268
271 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
272 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
273 template <typename CreationTimeT = Aws::Utils::DateTime>
274 void SetCreationTime(CreationTimeT&& value) {
275 m_creationTimeHasBeenSet = true;
276 m_creationTime = std::forward<CreationTimeT>(value);
277 }
278 template <typename CreationTimeT = Aws::Utils::DateTime>
279 Studio& WithCreationTime(CreationTimeT&& value) {
280 SetCreationTime(std::forward<CreationTimeT>(value));
281 return *this;
282 }
284
286
290 inline const Aws::String& GetDefaultS3Location() const { return m_defaultS3Location; }
291 inline bool DefaultS3LocationHasBeenSet() const { return m_defaultS3LocationHasBeenSet; }
292 template <typename DefaultS3LocationT = Aws::String>
293 void SetDefaultS3Location(DefaultS3LocationT&& value) {
294 m_defaultS3LocationHasBeenSet = true;
295 m_defaultS3Location = std::forward<DefaultS3LocationT>(value);
296 }
297 template <typename DefaultS3LocationT = Aws::String>
298 Studio& WithDefaultS3Location(DefaultS3LocationT&& value) {
299 SetDefaultS3Location(std::forward<DefaultS3LocationT>(value));
300 return *this;
301 }
303
305
310 inline const Aws::String& GetIdpAuthUrl() const { return m_idpAuthUrl; }
311 inline bool IdpAuthUrlHasBeenSet() const { return m_idpAuthUrlHasBeenSet; }
312 template <typename IdpAuthUrlT = Aws::String>
313 void SetIdpAuthUrl(IdpAuthUrlT&& value) {
314 m_idpAuthUrlHasBeenSet = true;
315 m_idpAuthUrl = std::forward<IdpAuthUrlT>(value);
316 }
317 template <typename IdpAuthUrlT = Aws::String>
318 Studio& WithIdpAuthUrl(IdpAuthUrlT&& value) {
319 SetIdpAuthUrl(std::forward<IdpAuthUrlT>(value));
320 return *this;
321 }
323
325
328 inline const Aws::String& GetIdpRelayStateParameterName() const { return m_idpRelayStateParameterName; }
329 inline bool IdpRelayStateParameterNameHasBeenSet() const { return m_idpRelayStateParameterNameHasBeenSet; }
330 template <typename IdpRelayStateParameterNameT = Aws::String>
331 void SetIdpRelayStateParameterName(IdpRelayStateParameterNameT&& value) {
332 m_idpRelayStateParameterNameHasBeenSet = true;
333 m_idpRelayStateParameterName = std::forward<IdpRelayStateParameterNameT>(value);
334 }
335 template <typename IdpRelayStateParameterNameT = Aws::String>
336 Studio& WithIdpRelayStateParameterName(IdpRelayStateParameterNameT&& value) {
337 SetIdpRelayStateParameterName(std::forward<IdpRelayStateParameterNameT>(value));
338 return *this;
339 }
341
343
346 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
347 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
348 template <typename TagsT = Aws::Vector<Tag>>
349 void SetTags(TagsT&& value) {
350 m_tagsHasBeenSet = true;
351 m_tags = std::forward<TagsT>(value);
352 }
353 template <typename TagsT = Aws::Vector<Tag>>
354 Studio& WithTags(TagsT&& value) {
355 SetTags(std::forward<TagsT>(value));
356 return *this;
357 }
358 template <typename TagsT = Tag>
359 Studio& AddTags(TagsT&& value) {
360 m_tagsHasBeenSet = true;
361 m_tags.emplace_back(std::forward<TagsT>(value));
362 return *this;
363 }
365
367
371 inline const Aws::String& GetIdcInstanceArn() const { return m_idcInstanceArn; }
372 inline bool IdcInstanceArnHasBeenSet() const { return m_idcInstanceArnHasBeenSet; }
373 template <typename IdcInstanceArnT = Aws::String>
374 void SetIdcInstanceArn(IdcInstanceArnT&& value) {
375 m_idcInstanceArnHasBeenSet = true;
376 m_idcInstanceArn = std::forward<IdcInstanceArnT>(value);
377 }
378 template <typename IdcInstanceArnT = Aws::String>
379 Studio& WithIdcInstanceArn(IdcInstanceArnT&& value) {
380 SetIdcInstanceArn(std::forward<IdcInstanceArnT>(value));
381 return *this;
382 }
384
386
390 inline bool GetTrustedIdentityPropagationEnabled() const { return m_trustedIdentityPropagationEnabled; }
391 inline bool TrustedIdentityPropagationEnabledHasBeenSet() const { return m_trustedIdentityPropagationEnabledHasBeenSet; }
392 inline void SetTrustedIdentityPropagationEnabled(bool value) {
393 m_trustedIdentityPropagationEnabledHasBeenSet = true;
394 m_trustedIdentityPropagationEnabled = value;
395 }
398 return *this;
399 }
401
403
409 inline IdcUserAssignment GetIdcUserAssignment() const { return m_idcUserAssignment; }
410 inline bool IdcUserAssignmentHasBeenSet() const { return m_idcUserAssignmentHasBeenSet; }
412 m_idcUserAssignmentHasBeenSet = true;
413 m_idcUserAssignment = value;
414 }
417 return *this;
418 }
420
422
426 inline const Aws::String& GetEncryptionKeyArn() const { return m_encryptionKeyArn; }
427 inline bool EncryptionKeyArnHasBeenSet() const { return m_encryptionKeyArnHasBeenSet; }
428 template <typename EncryptionKeyArnT = Aws::String>
429 void SetEncryptionKeyArn(EncryptionKeyArnT&& value) {
430 m_encryptionKeyArnHasBeenSet = true;
431 m_encryptionKeyArn = std::forward<EncryptionKeyArnT>(value);
432 }
433 template <typename EncryptionKeyArnT = Aws::String>
434 Studio& WithEncryptionKeyArn(EncryptionKeyArnT&& value) {
435 SetEncryptionKeyArn(std::forward<EncryptionKeyArnT>(value));
436 return *this;
437 }
439 private:
440 Aws::String m_studioId;
441
442 Aws::String m_studioArn;
443
444 Aws::String m_name;
445
446 Aws::String m_description;
447
448 AuthMode m_authMode{AuthMode::NOT_SET};
449
450 Aws::String m_vpcId;
451
452 Aws::Vector<Aws::String> m_subnetIds;
453
454 Aws::String m_serviceRole;
455
456 Aws::String m_userRole;
457
458 Aws::String m_workspaceSecurityGroupId;
459
460 Aws::String m_engineSecurityGroupId;
461
462 Aws::String m_url;
463
464 Aws::Utils::DateTime m_creationTime{};
465
466 Aws::String m_defaultS3Location;
467
468 Aws::String m_idpAuthUrl;
469
470 Aws::String m_idpRelayStateParameterName;
471
472 Aws::Vector<Tag> m_tags;
473
474 Aws::String m_idcInstanceArn;
475
476 bool m_trustedIdentityPropagationEnabled{false};
477
479
480 Aws::String m_encryptionKeyArn;
481 bool m_studioIdHasBeenSet = false;
482 bool m_studioArnHasBeenSet = false;
483 bool m_nameHasBeenSet = false;
484 bool m_descriptionHasBeenSet = false;
485 bool m_authModeHasBeenSet = false;
486 bool m_vpcIdHasBeenSet = false;
487 bool m_subnetIdsHasBeenSet = false;
488 bool m_serviceRoleHasBeenSet = false;
489 bool m_userRoleHasBeenSet = false;
490 bool m_workspaceSecurityGroupIdHasBeenSet = false;
491 bool m_engineSecurityGroupIdHasBeenSet = false;
492 bool m_urlHasBeenSet = false;
493 bool m_creationTimeHasBeenSet = false;
494 bool m_defaultS3LocationHasBeenSet = false;
495 bool m_idpAuthUrlHasBeenSet = false;
496 bool m_idpRelayStateParameterNameHasBeenSet = false;
497 bool m_tagsHasBeenSet = false;
498 bool m_idcInstanceArnHasBeenSet = false;
499 bool m_trustedIdentityPropagationEnabledHasBeenSet = false;
500 bool m_idcUserAssignmentHasBeenSet = false;
501 bool m_encryptionKeyArnHasBeenSet = false;
502};
503
504} // namespace Model
505} // namespace EMR
506} // namespace Aws
void SetAuthMode(AuthMode value)
Definition Studio.h:119
void SetUserRole(UserRoleT &&value)
Definition Studio.h:198
Studio & WithServiceRole(ServiceRoleT &&value)
Definition Studio.h:183
bool DescriptionHasBeenSet() const
Definition Studio.h:99
AWS_EMR_API Studio()=default
Studio & WithIdcInstanceArn(IdcInstanceArnT &&value)
Definition Studio.h:379
AWS_EMR_API Studio & operator=(Aws::Utils::Json::JsonView jsonValue)
Studio & WithIdcUserAssignment(IdcUserAssignment value)
Definition Studio.h:415
void SetDefaultS3Location(DefaultS3LocationT &&value)
Definition Studio.h:293
const Aws::String & GetStudioId() const
Definition Studio.h:44
void SetSubnetIds(SubnetIdsT &&value)
Definition Studio.h:154
Studio & AddTags(TagsT &&value)
Definition Studio.h:359
const Aws::String & GetEngineSecurityGroupId() const
Definition Studio.h:235
const Aws::String & GetIdpAuthUrl() const
Definition Studio.h:310
Studio & WithAuthMode(AuthMode value)
Definition Studio.h:123
bool IdcInstanceArnHasBeenSet() const
Definition Studio.h:372
const Aws::String & GetVpcId() const
Definition Studio.h:133
const Aws::String & GetServiceRole() const
Definition Studio.h:175
void SetIdcUserAssignment(IdcUserAssignment value)
Definition Studio.h:411
const Aws::String & GetDescription() const
Definition Studio.h:98
Studio & WithVpcId(VpcIdT &&value)
Definition Studio.h:141
void SetCreationTime(CreationTimeT &&value)
Definition Studio.h:274
void SetVpcId(VpcIdT &&value)
Definition Studio.h:136
Studio & WithEngineSecurityGroupId(EngineSecurityGroupIdT &&value)
Definition Studio.h:243
bool IdcUserAssignmentHasBeenSet() const
Definition Studio.h:410
bool IdpAuthUrlHasBeenSet() const
Definition Studio.h:311
Studio & WithStudioArn(StudioArnT &&value)
Definition Studio.h:70
const Aws::String & GetWorkspaceSecurityGroupId() const
Definition Studio.h:215
void SetStudioId(StudioIdT &&value)
Definition Studio.h:47
const Aws::String & GetStudioArn() const
Definition Studio.h:62
Studio & WithIdpAuthUrl(IdpAuthUrlT &&value)
Definition Studio.h:318
bool UrlHasBeenSet() const
Definition Studio.h:254
const Aws::String & GetEncryptionKeyArn() const
Definition Studio.h:426
Studio & WithSubnetIds(SubnetIdsT &&value)
Definition Studio.h:159
bool GetTrustedIdentityPropagationEnabled() const
Definition Studio.h:390
bool StudioIdHasBeenSet() const
Definition Studio.h:45
AWS_EMR_API Studio(Aws::Utils::Json::JsonView jsonValue)
Studio & WithTags(TagsT &&value)
Definition Studio.h:354
bool TrustedIdentityPropagationEnabledHasBeenSet() const
Definition Studio.h:391
void SetTrustedIdentityPropagationEnabled(bool value)
Definition Studio.h:392
Studio & WithDefaultS3Location(DefaultS3LocationT &&value)
Definition Studio.h:298
void SetStudioArn(StudioArnT &&value)
Definition Studio.h:65
Studio & WithUserRole(UserRoleT &&value)
Definition Studio.h:203
AuthMode GetAuthMode() const
Definition Studio.h:117
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
void SetEncryptionKeyArn(EncryptionKeyArnT &&value)
Definition Studio.h:429
bool StudioArnHasBeenSet() const
Definition Studio.h:63
Studio & WithUrl(UrlT &&value)
Definition Studio.h:261
bool ServiceRoleHasBeenSet() const
Definition Studio.h:176
const Aws::String & GetDefaultS3Location() const
Definition Studio.h:290
Studio & WithName(NameT &&value)
Definition Studio.h:88
bool TagsHasBeenSet() const
Definition Studio.h:347
bool SubnetIdsHasBeenSet() const
Definition Studio.h:152
Studio & WithCreationTime(CreationTimeT &&value)
Definition Studio.h:279
void SetDescription(DescriptionT &&value)
Definition Studio.h:101
void SetIdpRelayStateParameterName(IdpRelayStateParameterNameT &&value)
Definition Studio.h:331
IdcUserAssignment GetIdcUserAssignment() const
Definition Studio.h:409
Studio & WithEncryptionKeyArn(EncryptionKeyArnT &&value)
Definition Studio.h:434
const Aws::String & GetUrl() const
Definition Studio.h:253
void SetWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT &&value)
Definition Studio.h:218
const Aws::Vector< Tag > & GetTags() const
Definition Studio.h:346
const Aws::Vector< Aws::String > & GetSubnetIds() const
Definition Studio.h:151
bool EngineSecurityGroupIdHasBeenSet() const
Definition Studio.h:236
void SetIdpAuthUrl(IdpAuthUrlT &&value)
Definition Studio.h:313
Studio & WithWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT &&value)
Definition Studio.h:223
void SetServiceRole(ServiceRoleT &&value)
Definition Studio.h:178
const Aws::String & GetName() const
Definition Studio.h:80
Studio & WithIdpRelayStateParameterName(IdpRelayStateParameterNameT &&value)
Definition Studio.h:336
Studio & WithDescription(DescriptionT &&value)
Definition Studio.h:106
void SetTags(TagsT &&value)
Definition Studio.h:349
Studio & WithTrustedIdentityPropagationEnabled(bool value)
Definition Studio.h:396
void SetName(NameT &&value)
Definition Studio.h:83
const Aws::String & GetIdcInstanceArn() const
Definition Studio.h:371
bool IdpRelayStateParameterNameHasBeenSet() const
Definition Studio.h:329
bool NameHasBeenSet() const
Definition Studio.h:81
void SetUrl(UrlT &&value)
Definition Studio.h:256
bool DefaultS3LocationHasBeenSet() const
Definition Studio.h:291
bool CreationTimeHasBeenSet() const
Definition Studio.h:272
bool UserRoleHasBeenSet() const
Definition Studio.h:196
const Aws::Utils::DateTime & GetCreationTime() const
Definition Studio.h:271
bool EncryptionKeyArnHasBeenSet() const
Definition Studio.h:427
Studio & AddSubnetIds(SubnetIdsT &&value)
Definition Studio.h:164
const Aws::String & GetUserRole() const
Definition Studio.h:195
void SetIdcInstanceArn(IdcInstanceArnT &&value)
Definition Studio.h:374
void SetEngineSecurityGroupId(EngineSecurityGroupIdT &&value)
Definition Studio.h:238
Studio & WithStudioId(StudioIdT &&value)
Definition Studio.h:52
const Aws::String & GetIdpRelayStateParameterName() const
Definition Studio.h:328
bool WorkspaceSecurityGroupIdHasBeenSet() const
Definition Studio.h:216
bool VpcIdHasBeenSet() const
Definition Studio.h:134
bool AuthModeHasBeenSet() const
Definition Studio.h:118
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue