/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Details for an Amazon EMR Studio including ID, creation time, name, and so
* on.See Also:
AWS
* API Reference
The ID of the Amazon EMR Studio.
*/ inline const Aws::String& GetStudioId() const{ return m_studioId; } /** *The ID of the Amazon EMR Studio.
*/ inline bool StudioIdHasBeenSet() const { return m_studioIdHasBeenSet; } /** *The ID of the Amazon EMR Studio.
*/ inline void SetStudioId(const Aws::String& value) { m_studioIdHasBeenSet = true; m_studioId = value; } /** *The ID of the Amazon EMR Studio.
*/ inline void SetStudioId(Aws::String&& value) { m_studioIdHasBeenSet = true; m_studioId = std::move(value); } /** *The ID of the Amazon EMR Studio.
*/ inline void SetStudioId(const char* value) { m_studioIdHasBeenSet = true; m_studioId.assign(value); } /** *The ID of the Amazon EMR Studio.
*/ inline Studio& WithStudioId(const Aws::String& value) { SetStudioId(value); return *this;} /** *The ID of the Amazon EMR Studio.
*/ inline Studio& WithStudioId(Aws::String&& value) { SetStudioId(std::move(value)); return *this;} /** *The ID of the Amazon EMR Studio.
*/ inline Studio& WithStudioId(const char* value) { SetStudioId(value); return *this;} /** *The Amazon Resource Name (ARN) of the Amazon EMR Studio.
*/ inline const Aws::String& GetStudioArn() const{ return m_studioArn; } /** *The Amazon Resource Name (ARN) of the Amazon EMR Studio.
*/ inline bool StudioArnHasBeenSet() const { return m_studioArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the Amazon EMR Studio.
*/ inline void SetStudioArn(const Aws::String& value) { m_studioArnHasBeenSet = true; m_studioArn = value; } /** *The Amazon Resource Name (ARN) of the Amazon EMR Studio.
*/ inline void SetStudioArn(Aws::String&& value) { m_studioArnHasBeenSet = true; m_studioArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the Amazon EMR Studio.
*/ inline void SetStudioArn(const char* value) { m_studioArnHasBeenSet = true; m_studioArn.assign(value); } /** *The Amazon Resource Name (ARN) of the Amazon EMR Studio.
*/ inline Studio& WithStudioArn(const Aws::String& value) { SetStudioArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the Amazon EMR Studio.
*/ inline Studio& WithStudioArn(Aws::String&& value) { SetStudioArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the Amazon EMR Studio.
*/ inline Studio& WithStudioArn(const char* value) { SetStudioArn(value); return *this;} /** *The name of the Amazon EMR Studio.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the Amazon EMR Studio.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the Amazon EMR Studio.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the Amazon EMR Studio.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the Amazon EMR Studio.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the Amazon EMR Studio.
*/ inline Studio& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the Amazon EMR Studio.
*/ inline Studio& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the Amazon EMR Studio.
*/ inline Studio& WithName(const char* value) { SetName(value); return *this;} /** *The detailed description of the Amazon EMR Studio.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *The detailed description of the Amazon EMR Studio.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *The detailed description of the Amazon EMR Studio.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *The detailed description of the Amazon EMR Studio.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *The detailed description of the Amazon EMR Studio.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *The detailed description of the Amazon EMR Studio.
*/ inline Studio& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *The detailed description of the Amazon EMR Studio.
*/ inline Studio& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *The detailed description of the Amazon EMR Studio.
*/ inline Studio& WithDescription(const char* value) { SetDescription(value); return *this;} /** *Specifies whether the Amazon EMR Studio authenticates users with IAM or IAM * Identity Center.
*/ inline const AuthMode& GetAuthMode() const{ return m_authMode; } /** *Specifies whether the Amazon EMR Studio authenticates users with IAM or IAM * Identity Center.
*/ inline bool AuthModeHasBeenSet() const { return m_authModeHasBeenSet; } /** *Specifies whether the Amazon EMR Studio authenticates users with IAM or IAM * Identity Center.
*/ inline void SetAuthMode(const AuthMode& value) { m_authModeHasBeenSet = true; m_authMode = value; } /** *Specifies whether the Amazon EMR Studio authenticates users with IAM or IAM * Identity Center.
*/ inline void SetAuthMode(AuthMode&& value) { m_authModeHasBeenSet = true; m_authMode = std::move(value); } /** *Specifies whether the Amazon EMR Studio authenticates users with IAM or IAM * Identity Center.
*/ inline Studio& WithAuthMode(const AuthMode& value) { SetAuthMode(value); return *this;} /** *Specifies whether the Amazon EMR Studio authenticates users with IAM or IAM * Identity Center.
*/ inline Studio& WithAuthMode(AuthMode&& value) { SetAuthMode(std::move(value)); return *this;} /** *The ID of the VPC associated with the Amazon EMR Studio.
*/ inline const Aws::String& GetVpcId() const{ return m_vpcId; } /** *The ID of the VPC associated with the Amazon EMR Studio.
*/ inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; } /** *The ID of the VPC associated with the Amazon EMR Studio.
*/ inline void SetVpcId(const Aws::String& value) { m_vpcIdHasBeenSet = true; m_vpcId = value; } /** *The ID of the VPC associated with the Amazon EMR Studio.
*/ inline void SetVpcId(Aws::String&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::move(value); } /** *The ID of the VPC associated with the Amazon EMR Studio.
*/ inline void SetVpcId(const char* value) { m_vpcIdHasBeenSet = true; m_vpcId.assign(value); } /** *The ID of the VPC associated with the Amazon EMR Studio.
*/ inline Studio& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} /** *The ID of the VPC associated with the Amazon EMR Studio.
*/ inline Studio& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} /** *The ID of the VPC associated with the Amazon EMR Studio.
*/ inline Studio& WithVpcId(const char* value) { SetVpcId(value); return *this;} /** *The list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline const Aws::VectorThe list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; } /** *The list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline void SetSubnetIds(const Aws::VectorThe list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline void SetSubnetIds(Aws::VectorThe list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline Studio& WithSubnetIds(const Aws::VectorThe list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline Studio& WithSubnetIds(Aws::VectorThe list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline Studio& AddSubnetIds(const Aws::String& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; } /** *The list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline Studio& AddSubnetIds(Aws::String&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(std::move(value)); return *this; } /** *The list of IDs of the subnets associated with the Amazon EMR Studio.
*/ inline Studio& AddSubnetIds(const char* value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; } /** *The name of the IAM role assumed by the Amazon EMR Studio.
*/ inline const Aws::String& GetServiceRole() const{ return m_serviceRole; } /** *The name of the IAM role assumed by the Amazon EMR Studio.
*/ inline bool ServiceRoleHasBeenSet() const { return m_serviceRoleHasBeenSet; } /** *The name of the IAM role assumed by the Amazon EMR Studio.
*/ inline void SetServiceRole(const Aws::String& value) { m_serviceRoleHasBeenSet = true; m_serviceRole = value; } /** *The name of the IAM role assumed by the Amazon EMR Studio.
*/ inline void SetServiceRole(Aws::String&& value) { m_serviceRoleHasBeenSet = true; m_serviceRole = std::move(value); } /** *The name of the IAM role assumed by the Amazon EMR Studio.
*/ inline void SetServiceRole(const char* value) { m_serviceRoleHasBeenSet = true; m_serviceRole.assign(value); } /** *The name of the IAM role assumed by the Amazon EMR Studio.
*/ inline Studio& WithServiceRole(const Aws::String& value) { SetServiceRole(value); return *this;} /** *The name of the IAM role assumed by the Amazon EMR Studio.
*/ inline Studio& WithServiceRole(Aws::String&& value) { SetServiceRole(std::move(value)); return *this;} /** *The name of the IAM role assumed by the Amazon EMR Studio.
*/ inline Studio& WithServiceRole(const char* value) { SetServiceRole(value); return *this;} /** *The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
* A Studio only requires a UserRole
when you use IAM
* authentication.
The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
* A Studio only requires a UserRole
when you use IAM
* authentication.
The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
* A Studio only requires a UserRole
when you use IAM
* authentication.
The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
* A Studio only requires a UserRole
when you use IAM
* authentication.
The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
* A Studio only requires a UserRole
when you use IAM
* authentication.
The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
* A Studio only requires a UserRole
when you use IAM
* authentication.
The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
* A Studio only requires a UserRole
when you use IAM
* authentication.
The name of the IAM role assumed by users logged in to the Amazon EMR Studio.
* A Studio only requires a UserRole
when you use IAM
* authentication.
The ID of the Workspace security group associated with the Amazon EMR Studio. * The Workspace security group allows outbound network traffic to resources in the * Engine security group and to the internet.
*/ inline const Aws::String& GetWorkspaceSecurityGroupId() const{ return m_workspaceSecurityGroupId; } /** *The ID of the Workspace security group associated with the Amazon EMR Studio. * The Workspace security group allows outbound network traffic to resources in the * Engine security group and to the internet.
*/ inline bool WorkspaceSecurityGroupIdHasBeenSet() const { return m_workspaceSecurityGroupIdHasBeenSet; } /** *The ID of the Workspace security group associated with the Amazon EMR Studio. * The Workspace security group allows outbound network traffic to resources in the * Engine security group and to the internet.
*/ inline void SetWorkspaceSecurityGroupId(const Aws::String& value) { m_workspaceSecurityGroupIdHasBeenSet = true; m_workspaceSecurityGroupId = value; } /** *The ID of the Workspace security group associated with the Amazon EMR Studio. * The Workspace security group allows outbound network traffic to resources in the * Engine security group and to the internet.
*/ inline void SetWorkspaceSecurityGroupId(Aws::String&& value) { m_workspaceSecurityGroupIdHasBeenSet = true; m_workspaceSecurityGroupId = std::move(value); } /** *The ID of the Workspace security group associated with the Amazon EMR Studio. * The Workspace security group allows outbound network traffic to resources in the * Engine security group and to the internet.
*/ inline void SetWorkspaceSecurityGroupId(const char* value) { m_workspaceSecurityGroupIdHasBeenSet = true; m_workspaceSecurityGroupId.assign(value); } /** *The ID of the Workspace security group associated with the Amazon EMR Studio. * The Workspace security group allows outbound network traffic to resources in the * Engine security group and to the internet.
*/ inline Studio& WithWorkspaceSecurityGroupId(const Aws::String& value) { SetWorkspaceSecurityGroupId(value); return *this;} /** *The ID of the Workspace security group associated with the Amazon EMR Studio. * The Workspace security group allows outbound network traffic to resources in the * Engine security group and to the internet.
*/ inline Studio& WithWorkspaceSecurityGroupId(Aws::String&& value) { SetWorkspaceSecurityGroupId(std::move(value)); return *this;} /** *The ID of the Workspace security group associated with the Amazon EMR Studio. * The Workspace security group allows outbound network traffic to resources in the * Engine security group and to the internet.
*/ inline Studio& WithWorkspaceSecurityGroupId(const char* value) { SetWorkspaceSecurityGroupId(value); return *this;} /** *The ID of the Engine security group associated with the Amazon EMR Studio. * The Engine security group allows inbound network traffic from resources in the * Workspace security group.
*/ inline const Aws::String& GetEngineSecurityGroupId() const{ return m_engineSecurityGroupId; } /** *The ID of the Engine security group associated with the Amazon EMR Studio. * The Engine security group allows inbound network traffic from resources in the * Workspace security group.
*/ inline bool EngineSecurityGroupIdHasBeenSet() const { return m_engineSecurityGroupIdHasBeenSet; } /** *The ID of the Engine security group associated with the Amazon EMR Studio. * The Engine security group allows inbound network traffic from resources in the * Workspace security group.
*/ inline void SetEngineSecurityGroupId(const Aws::String& value) { m_engineSecurityGroupIdHasBeenSet = true; m_engineSecurityGroupId = value; } /** *The ID of the Engine security group associated with the Amazon EMR Studio. * The Engine security group allows inbound network traffic from resources in the * Workspace security group.
*/ inline void SetEngineSecurityGroupId(Aws::String&& value) { m_engineSecurityGroupIdHasBeenSet = true; m_engineSecurityGroupId = std::move(value); } /** *The ID of the Engine security group associated with the Amazon EMR Studio. * The Engine security group allows inbound network traffic from resources in the * Workspace security group.
*/ inline void SetEngineSecurityGroupId(const char* value) { m_engineSecurityGroupIdHasBeenSet = true; m_engineSecurityGroupId.assign(value); } /** *The ID of the Engine security group associated with the Amazon EMR Studio. * The Engine security group allows inbound network traffic from resources in the * Workspace security group.
*/ inline Studio& WithEngineSecurityGroupId(const Aws::String& value) { SetEngineSecurityGroupId(value); return *this;} /** *The ID of the Engine security group associated with the Amazon EMR Studio. * The Engine security group allows inbound network traffic from resources in the * Workspace security group.
*/ inline Studio& WithEngineSecurityGroupId(Aws::String&& value) { SetEngineSecurityGroupId(std::move(value)); return *this;} /** *The ID of the Engine security group associated with the Amazon EMR Studio. * The Engine security group allows inbound network traffic from resources in the * Workspace security group.
*/ inline Studio& WithEngineSecurityGroupId(const char* value) { SetEngineSecurityGroupId(value); return *this;} /** *The unique access URL of the Amazon EMR Studio.
*/ inline const Aws::String& GetUrl() const{ return m_url; } /** *The unique access URL of the Amazon EMR Studio.
*/ inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; } /** *The unique access URL of the Amazon EMR Studio.
*/ inline void SetUrl(const Aws::String& value) { m_urlHasBeenSet = true; m_url = value; } /** *The unique access URL of the Amazon EMR Studio.
*/ inline void SetUrl(Aws::String&& value) { m_urlHasBeenSet = true; m_url = std::move(value); } /** *The unique access URL of the Amazon EMR Studio.
*/ inline void SetUrl(const char* value) { m_urlHasBeenSet = true; m_url.assign(value); } /** *The unique access URL of the Amazon EMR Studio.
*/ inline Studio& WithUrl(const Aws::String& value) { SetUrl(value); return *this;} /** *The unique access URL of the Amazon EMR Studio.
*/ inline Studio& WithUrl(Aws::String&& value) { SetUrl(std::move(value)); return *this;} /** *The unique access URL of the Amazon EMR Studio.
*/ inline Studio& WithUrl(const char* value) { SetUrl(value); return *this;} /** *The time the Amazon EMR Studio was created.
*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *The time the Amazon EMR Studio was created.
*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *The time the Amazon EMR Studio was created.
*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *The time the Amazon EMR Studio was created.
*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *The time the Amazon EMR Studio was created.
*/ inline Studio& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *The time the Amazon EMR Studio was created.
*/ inline Studio& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook * files.
*/ inline const Aws::String& GetDefaultS3Location() const{ return m_defaultS3Location; } /** *The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook * files.
*/ inline bool DefaultS3LocationHasBeenSet() const { return m_defaultS3LocationHasBeenSet; } /** *The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook * files.
*/ inline void SetDefaultS3Location(const Aws::String& value) { m_defaultS3LocationHasBeenSet = true; m_defaultS3Location = value; } /** *The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook * files.
*/ inline void SetDefaultS3Location(Aws::String&& value) { m_defaultS3LocationHasBeenSet = true; m_defaultS3Location = std::move(value); } /** *The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook * files.
*/ inline void SetDefaultS3Location(const char* value) { m_defaultS3LocationHasBeenSet = true; m_defaultS3Location.assign(value); } /** *The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook * files.
*/ inline Studio& WithDefaultS3Location(const Aws::String& value) { SetDefaultS3Location(value); return *this;} /** *The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook * files.
*/ inline Studio& WithDefaultS3Location(Aws::String&& value) { SetDefaultS3Location(std::move(value)); return *this;} /** *The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook * files.
*/ inline Studio& WithDefaultS3Location(const char* value) { SetDefaultS3Location(value); return *this;} /** *Your identity provider's authentication endpoint. Amazon EMR Studio redirects * federated users to this endpoint for authentication when logging in to a Studio * with the Studio URL.
*/ inline const Aws::String& GetIdpAuthUrl() const{ return m_idpAuthUrl; } /** *Your identity provider's authentication endpoint. Amazon EMR Studio redirects * federated users to this endpoint for authentication when logging in to a Studio * with the Studio URL.
*/ inline bool IdpAuthUrlHasBeenSet() const { return m_idpAuthUrlHasBeenSet; } /** *Your identity provider's authentication endpoint. Amazon EMR Studio redirects * federated users to this endpoint for authentication when logging in to a Studio * with the Studio URL.
*/ inline void SetIdpAuthUrl(const Aws::String& value) { m_idpAuthUrlHasBeenSet = true; m_idpAuthUrl = value; } /** *Your identity provider's authentication endpoint. Amazon EMR Studio redirects * federated users to this endpoint for authentication when logging in to a Studio * with the Studio URL.
*/ inline void SetIdpAuthUrl(Aws::String&& value) { m_idpAuthUrlHasBeenSet = true; m_idpAuthUrl = std::move(value); } /** *Your identity provider's authentication endpoint. Amazon EMR Studio redirects * federated users to this endpoint for authentication when logging in to a Studio * with the Studio URL.
*/ inline void SetIdpAuthUrl(const char* value) { m_idpAuthUrlHasBeenSet = true; m_idpAuthUrl.assign(value); } /** *Your identity provider's authentication endpoint. Amazon EMR Studio redirects * federated users to this endpoint for authentication when logging in to a Studio * with the Studio URL.
*/ inline Studio& WithIdpAuthUrl(const Aws::String& value) { SetIdpAuthUrl(value); return *this;} /** *Your identity provider's authentication endpoint. Amazon EMR Studio redirects * federated users to this endpoint for authentication when logging in to a Studio * with the Studio URL.
*/ inline Studio& WithIdpAuthUrl(Aws::String&& value) { SetIdpAuthUrl(std::move(value)); return *this;} /** *Your identity provider's authentication endpoint. Amazon EMR Studio redirects * federated users to this endpoint for authentication when logging in to a Studio * with the Studio URL.
*/ inline Studio& WithIdpAuthUrl(const char* value) { SetIdpAuthUrl(value); return *this;} /** *The name of your identity provider's RelayState
parameter.
The name of your identity provider's RelayState
parameter.
The name of your identity provider's RelayState
parameter.
The name of your identity provider's RelayState
parameter.
The name of your identity provider's RelayState
parameter.
The name of your identity provider's RelayState
parameter.
The name of your identity provider's RelayState
parameter.
The name of your identity provider's RelayState
parameter.
A list of tags associated with the Amazon EMR Studio.
*/ inline const Aws::VectorA list of tags associated with the Amazon EMR Studio.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *A list of tags associated with the Amazon EMR Studio.
*/ inline void SetTags(const Aws::VectorA list of tags associated with the Amazon EMR Studio.
*/ inline void SetTags(Aws::VectorA list of tags associated with the Amazon EMR Studio.
*/ inline Studio& WithTags(const Aws::VectorA list of tags associated with the Amazon EMR Studio.
*/ inline Studio& WithTags(Aws::VectorA list of tags associated with the Amazon EMR Studio.
*/ inline Studio& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *A list of tags associated with the Amazon EMR Studio.
*/ inline Studio& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_studioId; bool m_studioIdHasBeenSet = false; Aws::String m_studioArn; bool m_studioArnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; AuthMode m_authMode; bool m_authModeHasBeenSet = false; Aws::String m_vpcId; bool m_vpcIdHasBeenSet = false; Aws::Vector