Class: AWSCDK::NimbleStudio::CfnStudioProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
nimble_studio/cfn_studio_props.rb

Overview

Properties for defining a CfnStudio.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(admin_role_arn:, display_name:, studio_name:, user_role_arn:, studio_encryption_configuration: nil, tags: nil) ⇒ CfnStudioProps

Returns a new instance of CfnStudioProps.

Parameters:



15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'nimble_studio/cfn_studio_props.rb', line 15

def initialize(admin_role_arn:, display_name:, studio_name:, user_role_arn:, studio_encryption_configuration: nil, tags: nil)
  @admin_role_arn = admin_role_arn
  Jsii::Type.check_type(@admin_role_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pYW0uSVJvbGVSZWYifV19fQ==")), "adminRoleArn")
  @display_name = display_name
  Jsii::Type.check_type(@display_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "displayName")
  @studio_name = studio_name
  Jsii::Type.check_type(@studio_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "studioName")
  @user_role_arn = user_role_arn
  Jsii::Type.check_type(@user_role_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pYW0uSVJvbGVSZWYifV19fQ==")), "userRoleArn")
  @studio_encryption_configuration = studio_encryption_configuration.is_a?(Hash) ? ::AWSCDK::NimbleStudio::CfnStudio::StudioEncryptionConfigurationProperty.new(**studio_encryption_configuration.transform_keys(&:to_sym)) : studio_encryption_configuration
  Jsii::Type.check_type(@studio_encryption_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19uaW1ibGVzdHVkaW8uQ2ZuU3R1ZGlvLlN0dWRpb0VuY3J5cHRpb25Db25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "studioEncryptionConfiguration") unless @studio_encryption_configuration.nil?
  @tags = tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoibWFwIn19")), "tags") unless @tags.nil?
end

Instance Attribute Details

#admin_role_arnString, AWSCDK::Interfaces::AWSIAM::IRoleRef (readonly)

The IAM role that Studio Admins will assume when logging in to the Nimble Studio portal.

.



34
35
36
# File 'nimble_studio/cfn_studio_props.rb', line 34

def admin_role_arn
  @admin_role_arn
end

#display_nameString (readonly)

A friendly name for the studio.

.



39
40
41
# File 'nimble_studio/cfn_studio_props.rb', line 39

def display_name
  @display_name
end

#studio_encryption_configurationAWSCDK::IResolvable, ... (readonly)

Configuration of the encryption method that is used for the studio.

.



54
55
56
# File 'nimble_studio/cfn_studio_props.rb', line 54

def studio_encryption_configuration
  @studio_encryption_configuration
end

#studio_nameString (readonly)

The studio name that is used in the URL of the Nimble Studio portal when accessed by Nimble Studio users.

.



44
45
46
# File 'nimble_studio/cfn_studio_props.rb', line 44

def studio_name
  @studio_name
end

#tagsHash{String => String}? (readonly)



57
58
59
# File 'nimble_studio/cfn_studio_props.rb', line 57

def tags
  @tags
end

#user_role_arnString, AWSCDK::Interfaces::AWSIAM::IRoleRef (readonly)

The IAM role that Studio Users will assume when logging in to the Nimble Studio portal.

.



49
50
51
# File 'nimble_studio/cfn_studio_props.rb', line 49

def user_role_arn
  @user_role_arn
end

Class Method Details

.jsii_propertiesObject



59
60
61
62
63
64
65
66
67
68
# File 'nimble_studio/cfn_studio_props.rb', line 59

def self.jsii_properties
  {
    :admin_role_arn => "adminRoleArn",
    :display_name => "displayName",
    :studio_name => "studioName",
    :user_role_arn => "userRoleArn",
    :studio_encryption_configuration => "studioEncryptionConfiguration",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



70
71
72
73
74
75
76
77
78
79
80
81
# File 'nimble_studio/cfn_studio_props.rb', line 70

def to_jsii
  result = {}
  result.merge!({
    "adminRoleArn" => @admin_role_arn,
    "displayName" => @display_name,
    "studioName" => @studio_name,
    "userRoleArn" => @user_role_arn,
    "studioEncryptionConfiguration" => @studio_encryption_configuration,
    "tags" => @tags,
  })
  result.compact
end