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>
46 template <
typename StudioIdT = Aws::String>
48 m_studioIdHasBeenSet =
true;
49 m_studioId = std::forward<StudioIdT>(value);
51 template <
typename StudioIdT = Aws::String>
64 template <
typename StudioArnT = Aws::String>
66 m_studioArnHasBeenSet =
true;
67 m_studioArn = std::forward<StudioArnT>(value);
69 template <
typename StudioArnT = Aws::String>
82 template <
typename NameT = Aws::String>
84 m_nameHasBeenSet =
true;
85 m_name = std::forward<NameT>(value);
87 template <
typename NameT = Aws::String>
89 SetName(std::forward<NameT>(value));
100 template <
typename DescriptionT = Aws::String>
102 m_descriptionHasBeenSet =
true;
103 m_description = std::forward<DescriptionT>(value);
105 template <
typename DescriptionT = Aws::String>
120 m_authModeHasBeenSet =
true;
135 template <
typename VpcIdT = Aws::String>
137 m_vpcIdHasBeenSet =
true;
138 m_vpcId = std::forward<VpcIdT>(value);
140 template <
typename VpcIdT = Aws::String>
142 SetVpcId(std::forward<VpcIdT>(value));
153 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
155 m_subnetIdsHasBeenSet =
true;
156 m_subnetIds = std::forward<SubnetIdsT>(value);
158 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
163 template <
typename SubnetIdsT = Aws::String>
165 m_subnetIdsHasBeenSet =
true;
166 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
177 template <
typename ServiceRoleT = Aws::String>
179 m_serviceRoleHasBeenSet =
true;
180 m_serviceRole = std::forward<ServiceRoleT>(value);
182 template <
typename ServiceRoleT = Aws::String>
197 template <
typename UserRoleT = Aws::String>
199 m_userRoleHasBeenSet =
true;
200 m_userRole = std::forward<UserRoleT>(value);
202 template <
typename UserRoleT = Aws::String>
217 template <
typename WorkspaceSecurityGroupIdT = Aws::String>
219 m_workspaceSecurityGroupIdHasBeenSet =
true;
220 m_workspaceSecurityGroupId = std::forward<WorkspaceSecurityGroupIdT>(value);
222 template <
typename WorkspaceSecurityGroupIdT = Aws::String>
237 template <
typename EngineSecurityGroupIdT = Aws::String>
239 m_engineSecurityGroupIdHasBeenSet =
true;
240 m_engineSecurityGroupId = std::forward<EngineSecurityGroupIdT>(value);
242 template <
typename EngineSecurityGroupIdT = Aws::String>
255 template <
typename UrlT = Aws::String>
257 m_urlHasBeenSet =
true;
258 m_url = std::forward<UrlT>(value);
260 template <
typename UrlT = Aws::String>
262 SetUrl(std::forward<UrlT>(value));
273 template <
typename CreationTimeT = Aws::Utils::DateTime>
275 m_creationTimeHasBeenSet =
true;
276 m_creationTime = std::forward<CreationTimeT>(value);
278 template <
typename CreationTimeT = Aws::Utils::DateTime>
292 template <
typename DefaultS3LocationT = Aws::String>
294 m_defaultS3LocationHasBeenSet =
true;
295 m_defaultS3Location = std::forward<DefaultS3LocationT>(value);
297 template <
typename DefaultS3LocationT = Aws::String>
312 template <
typename IdpAuthUrlT = Aws::String>
314 m_idpAuthUrlHasBeenSet =
true;
315 m_idpAuthUrl = std::forward<IdpAuthUrlT>(value);
317 template <
typename IdpAuthUrlT = Aws::String>
330 template <
typename IdpRelayStateParameterNameT = Aws::String>
332 m_idpRelayStateParameterNameHasBeenSet =
true;
333 m_idpRelayStateParameterName = std::forward<IdpRelayStateParameterNameT>(value);
335 template <
typename IdpRelayStateParameterNameT = Aws::String>
348 template <
typename TagsT = Aws::Vector<Tag>>
350 m_tagsHasBeenSet =
true;
351 m_tags = std::forward<TagsT>(value);
353 template <
typename TagsT = Aws::Vector<Tag>>
355 SetTags(std::forward<TagsT>(value));
358 template <
typename TagsT = Tag>
360 m_tagsHasBeenSet =
true;
361 m_tags.emplace_back(std::forward<TagsT>(value));
373 template <
typename IdcInstanceArnT = Aws::String>
375 m_idcInstanceArnHasBeenSet =
true;
376 m_idcInstanceArn = std::forward<IdcInstanceArnT>(value);
378 template <
typename IdcInstanceArnT = Aws::String>
393 m_trustedIdentityPropagationEnabledHasBeenSet =
true;
394 m_trustedIdentityPropagationEnabled = value;
412 m_idcUserAssignmentHasBeenSet =
true;
413 m_idcUserAssignment = value;
428 template <
typename EncryptionKeyArnT = Aws::String>
430 m_encryptionKeyArnHasBeenSet =
true;
431 m_encryptionKeyArn = std::forward<EncryptionKeyArnT>(value);
433 template <
typename EncryptionKeyArnT = Aws::String>
476 bool m_trustedIdentityPropagationEnabled{
false};
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;
void SetAuthMode(AuthMode value)
void SetUserRole(UserRoleT &&value)
Studio & WithServiceRole(ServiceRoleT &&value)
bool DescriptionHasBeenSet() const
AWS_EMR_API Studio()=default
Studio & WithIdcInstanceArn(IdcInstanceArnT &&value)
AWS_EMR_API Studio & operator=(Aws::Utils::Json::JsonView jsonValue)
Studio & WithIdcUserAssignment(IdcUserAssignment value)
void SetDefaultS3Location(DefaultS3LocationT &&value)
const Aws::String & GetStudioId() const
void SetSubnetIds(SubnetIdsT &&value)
Studio & AddTags(TagsT &&value)
const Aws::String & GetEngineSecurityGroupId() const
const Aws::String & GetIdpAuthUrl() const
Studio & WithAuthMode(AuthMode value)
bool IdcInstanceArnHasBeenSet() const
const Aws::String & GetVpcId() const
const Aws::String & GetServiceRole() const
void SetIdcUserAssignment(IdcUserAssignment value)
const Aws::String & GetDescription() const
Studio & WithVpcId(VpcIdT &&value)
void SetCreationTime(CreationTimeT &&value)
void SetVpcId(VpcIdT &&value)
Studio & WithEngineSecurityGroupId(EngineSecurityGroupIdT &&value)
bool IdcUserAssignmentHasBeenSet() const
bool IdpAuthUrlHasBeenSet() const
Studio & WithStudioArn(StudioArnT &&value)
const Aws::String & GetWorkspaceSecurityGroupId() const
void SetStudioId(StudioIdT &&value)
const Aws::String & GetStudioArn() const
Studio & WithIdpAuthUrl(IdpAuthUrlT &&value)
bool UrlHasBeenSet() const
const Aws::String & GetEncryptionKeyArn() const
Studio & WithSubnetIds(SubnetIdsT &&value)
bool GetTrustedIdentityPropagationEnabled() const
bool StudioIdHasBeenSet() const
AWS_EMR_API Studio(Aws::Utils::Json::JsonView jsonValue)
Studio & WithTags(TagsT &&value)
bool TrustedIdentityPropagationEnabledHasBeenSet() const
void SetTrustedIdentityPropagationEnabled(bool value)
Studio & WithDefaultS3Location(DefaultS3LocationT &&value)
void SetStudioArn(StudioArnT &&value)
Studio & WithUserRole(UserRoleT &&value)
AuthMode GetAuthMode() const
AWS_EMR_API Aws::Utils::Json::JsonValue Jsonize() const
void SetEncryptionKeyArn(EncryptionKeyArnT &&value)
bool StudioArnHasBeenSet() const
Studio & WithUrl(UrlT &&value)
bool ServiceRoleHasBeenSet() const
const Aws::String & GetDefaultS3Location() const
Studio & WithName(NameT &&value)
bool TagsHasBeenSet() const
bool SubnetIdsHasBeenSet() const
Studio & WithCreationTime(CreationTimeT &&value)
void SetDescription(DescriptionT &&value)
void SetIdpRelayStateParameterName(IdpRelayStateParameterNameT &&value)
IdcUserAssignment GetIdcUserAssignment() const
Studio & WithEncryptionKeyArn(EncryptionKeyArnT &&value)
const Aws::String & GetUrl() const
void SetWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT &&value)
const Aws::Vector< Tag > & GetTags() const
const Aws::Vector< Aws::String > & GetSubnetIds() const
bool EngineSecurityGroupIdHasBeenSet() const
void SetIdpAuthUrl(IdpAuthUrlT &&value)
Studio & WithWorkspaceSecurityGroupId(WorkspaceSecurityGroupIdT &&value)
void SetServiceRole(ServiceRoleT &&value)
const Aws::String & GetName() const
Studio & WithIdpRelayStateParameterName(IdpRelayStateParameterNameT &&value)
Studio & WithDescription(DescriptionT &&value)
void SetTags(TagsT &&value)
Studio & WithTrustedIdentityPropagationEnabled(bool value)
void SetName(NameT &&value)
const Aws::String & GetIdcInstanceArn() const
bool IdpRelayStateParameterNameHasBeenSet() const
bool NameHasBeenSet() const
void SetUrl(UrlT &&value)
bool DefaultS3LocationHasBeenSet() const
bool CreationTimeHasBeenSet() const
bool UserRoleHasBeenSet() const
const Aws::Utils::DateTime & GetCreationTime() const
bool EncryptionKeyArnHasBeenSet() const
Studio & AddSubnetIds(SubnetIdsT &&value)
const Aws::String & GetUserRole() const
void SetIdcInstanceArn(IdcInstanceArnT &&value)
void SetEngineSecurityGroupId(EngineSecurityGroupIdT &&value)
Studio & WithStudioId(StudioIdT &&value)
const Aws::String & GetIdpRelayStateParameterName() const
bool WorkspaceSecurityGroupIdHasBeenSet() const
bool VpcIdHasBeenSet() const
bool AuthModeHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue