Class: AWSCDK::WorkspacesThinClient::CfnEnvironmentProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
workspaces_thin_client/cfn_environment_props.rb

Overview

Properties for defining a CfnEnvironment.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(desktop_arn:, desired_software_set_id: nil, desktop_endpoint: nil, device_creation_tags: nil, kms_key_arn: nil, maintenance_window: nil, name: nil, software_set_update_mode: nil, software_set_update_schedule: nil, tags: nil) ⇒ CfnEnvironmentProps

Returns a new instance of CfnEnvironmentProps.

Parameters:

  • desktop_arn (String)

    The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, WorkSpaces Secure Browser, or WorkSpaces Applications.

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

    The ID of the software set to apply.

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

    The URL for the identity provider login (only for environments that use WorkSpaces Applications).

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

    An array of key-value pairs to apply to the newly created devices for this environment.

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

    The Amazon Resource Name (ARN) of the AWS Key Management Service key used to encrypt the environment.

  • maintenance_window (AWSCDK::IResolvable, AWSCDK::WorkspacesThinClient::CfnEnvironment::MaintenanceWindowProperty, nil) (defaults to: nil)

    A specification for a time window to apply software updates.

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

    The name of the environment.

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

    An option to define which software updates to apply.

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

    An option to define if software updates should be applied within a maintenance window.

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

    An array of key-value pairs to apply to this resource.



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'workspaces_thin_client/cfn_environment_props.rb', line 19

def initialize(desktop_arn:, desired_software_set_id: nil, desktop_endpoint: nil, device_creation_tags: nil, kms_key_arn: nil, maintenance_window: nil, name: nil, software_set_update_mode: nil, software_set_update_schedule: nil, tags: nil)
  @desktop_arn = desktop_arn
  Jsii::Type.check_type(@desktop_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "desktopArn")
  @desired_software_set_id = desired_software_set_id
  Jsii::Type.check_type(@desired_software_set_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "desiredSoftwareSetId") unless @desired_software_set_id.nil?
  @desktop_endpoint = desktop_endpoint
  Jsii::Type.check_type(@desktop_endpoint, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "desktopEndpoint") unless @desktop_endpoint.nil?
  @device_creation_tags = device_creation_tags
  Jsii::Type.check_type(@device_creation_tags, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5UYWcifV19fSwia2luZCI6ImFycmF5In19XX19")), "deviceCreationTags") unless @device_creation_tags.nil?
  @kms_key_arn = kms_key_arn
  Jsii::Type.check_type(@kms_key_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyArn") unless @kms_key_arn.nil?
  @maintenance_window = maintenance_window.is_a?(Hash) ? ::AWSCDK::WorkspacesThinClient::CfnEnvironment::MaintenanceWindowProperty.new(**maintenance_window.transform_keys(&:to_sym)) : maintenance_window
  Jsii::Type.check_type(@maintenance_window, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c193b3Jrc3BhY2VzdGhpbmNsaWVudC5DZm5FbnZpcm9ubWVudC5NYWludGVuYW5jZVdpbmRvd1Byb3BlcnR5In1dfX0=")), "maintenanceWindow") unless @maintenance_window.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
  @software_set_update_mode = software_set_update_mode
  Jsii::Type.check_type(@software_set_update_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "softwareSetUpdateMode") unless @software_set_update_mode.nil?
  @software_set_update_schedule = software_set_update_schedule
  Jsii::Type.check_type(@software_set_update_schedule, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "softwareSetUpdateSchedule") unless @software_set_update_schedule.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

#desired_software_set_idString? (readonly)

The ID of the software set to apply.



51
52
53
# File 'workspaces_thin_client/cfn_environment_props.rb', line 51

def desired_software_set_id
  @desired_software_set_id
end

#desktop_arnString (readonly)

The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, WorkSpaces Secure Browser, or WorkSpaces Applications.



46
47
48
# File 'workspaces_thin_client/cfn_environment_props.rb', line 46

def desktop_arn
  @desktop_arn
end

#desktop_endpointString? (readonly)

The URL for the identity provider login (only for environments that use WorkSpaces Applications).



56
57
58
# File 'workspaces_thin_client/cfn_environment_props.rb', line 56

def desktop_endpoint
  @desktop_endpoint
end

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

An array of key-value pairs to apply to the newly created devices for this environment.



61
62
63
# File 'workspaces_thin_client/cfn_environment_props.rb', line 61

def device_creation_tags
  @device_creation_tags
end

#kms_key_arnString? (readonly)

The Amazon Resource Name (ARN) of the AWS Key Management Service key used to encrypt the environment.



66
67
68
# File 'workspaces_thin_client/cfn_environment_props.rb', line 66

def kms_key_arn
  @kms_key_arn
end

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

A specification for a time window to apply software updates.



71
72
73
# File 'workspaces_thin_client/cfn_environment_props.rb', line 71

def maintenance_window
  @maintenance_window
end

#nameString? (readonly)

The name of the environment.



76
77
78
# File 'workspaces_thin_client/cfn_environment_props.rb', line 76

def name
  @name
end

#software_set_update_modeString? (readonly)

An option to define which software updates to apply.



81
82
83
# File 'workspaces_thin_client/cfn_environment_props.rb', line 81

def software_set_update_mode
  @software_set_update_mode
end

#software_set_update_scheduleString? (readonly)

An option to define if software updates should be applied within a maintenance window.



86
87
88
# File 'workspaces_thin_client/cfn_environment_props.rb', line 86

def software_set_update_schedule
  @software_set_update_schedule
end

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

An array of key-value pairs to apply to this resource.

For more information, see Tag .



93
94
95
# File 'workspaces_thin_client/cfn_environment_props.rb', line 93

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



95
96
97
98
99
100
101
102
103
104
105
106
107
108
# File 'workspaces_thin_client/cfn_environment_props.rb', line 95

def self.jsii_properties
  {
    :desktop_arn => "desktopArn",
    :desired_software_set_id => "desiredSoftwareSetId",
    :desktop_endpoint => "desktopEndpoint",
    :device_creation_tags => "deviceCreationTags",
    :kms_key_arn => "kmsKeyArn",
    :maintenance_window => "maintenanceWindow",
    :name => "name",
    :software_set_update_mode => "softwareSetUpdateMode",
    :software_set_update_schedule => "softwareSetUpdateSchedule",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# File 'workspaces_thin_client/cfn_environment_props.rb', line 110

def to_jsii
  result = {}
  result.merge!({
    "desktopArn" => @desktop_arn,
    "desiredSoftwareSetId" => @desired_software_set_id,
    "desktopEndpoint" => @desktop_endpoint,
    "deviceCreationTags" => @device_creation_tags,
    "kmsKeyArn" => @kms_key_arn,
    "maintenanceWindow" => @maintenance_window,
    "name" => @name,
    "softwareSetUpdateMode" => @software_set_update_mode,
    "softwareSetUpdateSchedule" => @software_set_update_schedule,
    "tags" => @tags,
  })
  result.compact
end