Class: AWSCDK::AppStream::CfnAppBlockBuilderProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
app_stream/cfn_app_block_builder_props.rb

Overview

Properties for defining a CfnAppBlockBuilder.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(instance_type:, name:, platform:, vpc_config:, access_endpoints: nil, app_block_arns: nil, description: nil, display_name: nil, enable_default_internet_access: nil, iam_role_arn: nil, tags: nil) ⇒ CfnAppBlockBuilderProps

Returns a new instance of CfnAppBlockBuilderProps.

Parameters:

  • instance_type (String)

    The instance type of the app block builder.

  • name (String)

    The name of the app block builder.

  • platform (String)

    The platform of the app block builder.

  • vpc_config (AWSCDK::IResolvable, AWSCDK::AppStream::CfnAppBlockBuilder::VPCConfigProperty)

    The VPC configuration for the app block builder.

  • access_endpoints (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::AppStream::CfnAppBlockBuilder::AccessEndpointProperty>, nil) (defaults to: nil)

    The access endpoints of the app block builder.

  • app_block_arns (Array<String>, nil) (defaults to: nil)

    The ARN of the app block.

  • description (String, nil) (defaults to: nil)

    The description of the app block builder.

  • display_name (String, nil) (defaults to: nil)

    The display name of the app block builder.

  • enable_default_internet_access (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Indicates whether default internet access is enabled for the app block builder.

  • iam_role_arn (String, nil) (defaults to: nil)

    The ARN of the IAM role that is applied to the app block builder.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    The tags of the app block builder.



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'app_stream/cfn_app_block_builder_props.rb', line 20

def initialize(instance_type:, name:, platform:, vpc_config:, access_endpoints: nil, app_block_arns: nil, description: nil, display_name: nil, enable_default_internet_access: nil, iam_role_arn: nil, tags: nil)
  @instance_type = instance_type
  Jsii::Type.check_type(@instance_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "instanceType")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @platform = platform
  Jsii::Type.check_type(@platform, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "platform")
  @vpc_config = vpc_config.is_a?(Hash) ? ::AWSCDK::AppStream::CfnAppBlockBuilder::VPCConfigProperty.new(**vpc_config.transform_keys(&:to_sym)) : vpc_config
  Jsii::Type.check_type(@vpc_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hcHBzdHJlYW0uQ2ZuQXBwQmxvY2tCdWlsZGVyLlZwY0NvbmZpZ1Byb3BlcnR5In1dfX0=")), "vpcConfig")
  @access_endpoints = access_endpoints
  Jsii::Type.check_type(@access_endpoints, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYXBwc3RyZWFtLkNmbkFwcEJsb2NrQnVpbGRlci5BY2Nlc3NFbmRwb2ludFByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "accessEndpoints") unless @access_endpoints.nil?
  @app_block_arns = app_block_arns
  Jsii::Type.check_type(@app_block_arns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "appBlockArns") unless @app_block_arns.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @display_name = display_name
  Jsii::Type.check_type(@display_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "displayName") unless @display_name.nil?
  @enable_default_internet_access = enable_default_internet_access
  Jsii::Type.check_type(@enable_default_internet_access, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enableDefaultInternetAccess") unless @enable_default_internet_access.nil?
  @iam_role_arn = iam_role_arn
  Jsii::Type.check_type(@iam_role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "iamRoleArn") unless @iam_role_arn.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

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

The access endpoints of the app block builder.



71
72
73
# File 'app_stream/cfn_app_block_builder_props.rb', line 71

def access_endpoints
  @access_endpoints
end

#app_block_arnsArray<String>? (readonly)

The ARN of the app block.

Maximum : 1



78
79
80
# File 'app_stream/cfn_app_block_builder_props.rb', line 78

def app_block_arns
  @app_block_arns
end

#descriptionString? (readonly)

The description of the app block builder.



83
84
85
# File 'app_stream/cfn_app_block_builder_props.rb', line 83

def description
  @description
end

#display_nameString? (readonly)

The display name of the app block builder.



88
89
90
# File 'app_stream/cfn_app_block_builder_props.rb', line 88

def display_name
  @display_name
end

#enable_default_internet_accessBoolean, ... (readonly)

Indicates whether default internet access is enabled for the app block builder.



93
94
95
# File 'app_stream/cfn_app_block_builder_props.rb', line 93

def enable_default_internet_access
  @enable_default_internet_access
end

#iam_role_arnString? (readonly)

The ARN of the IAM role that is applied to the app block builder.



98
99
100
# File 'app_stream/cfn_app_block_builder_props.rb', line 98

def iam_role_arn
  @iam_role_arn
end

#instance_typeString (readonly)

The instance type of the app block builder.



49
50
51
# File 'app_stream/cfn_app_block_builder_props.rb', line 49

def instance_type
  @instance_type
end

#nameString (readonly)

The name of the app block builder.



54
55
56
# File 'app_stream/cfn_app_block_builder_props.rb', line 54

def name
  @name
end

#platformString (readonly)

The platform of the app block builder.

Allowed values : WINDOWS_SERVER_2019



61
62
63
# File 'app_stream/cfn_app_block_builder_props.rb', line 61

def platform
  @platform
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

The tags of the app block builder.



103
104
105
# File 'app_stream/cfn_app_block_builder_props.rb', line 103

def tags
  @tags
end

#vpc_configAWSCDK::IResolvable, AWSCDK::AppStream::CfnAppBlockBuilder::VPCConfigProperty (readonly)

The VPC configuration for the app block builder.



66
67
68
# File 'app_stream/cfn_app_block_builder_props.rb', line 66

def vpc_config
  @vpc_config
end

Class Method Details

.jsii_propertiesObject



105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# File 'app_stream/cfn_app_block_builder_props.rb', line 105

def self.jsii_properties
  {
    :instance_type => "instanceType",
    :name => "name",
    :platform => "platform",
    :vpc_config => "vpcConfig",
    :access_endpoints => "accessEndpoints",
    :app_block_arns => "appBlockArns",
    :description => "description",
    :display_name => "displayName",
    :enable_default_internet_access => "enableDefaultInternetAccess",
    :iam_role_arn => "iamRoleArn",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'app_stream/cfn_app_block_builder_props.rb', line 121

def to_jsii
  result = {}
  result.merge!({
    "instanceType" => @instance_type,
    "name" => @name,
    "platform" => @platform,
    "vpcConfig" => @vpc_config,
    "accessEndpoints" => @access_endpoints,
    "appBlockArns" => @app_block_arns,
    "description" => @description,
    "displayName" => @display_name,
    "enableDefaultInternetAccess" => @enable_default_internet_access,
    "iamRoleArn" => @iam_role_arn,
    "tags" => @tags,
  })
  result.compact
end