Class: AWSCDK::WorkspacesInstances::CfnVolumeProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::WorkspacesInstances::CfnVolumeProps
- Defined in:
- workspaces_instances/cfn_volume_props.rb
Overview
Properties for defining a CfnVolume.
Instance Attribute Summary collapse
-
#availability_zone ⇒ String
readonly
The Availability Zone in which to create the volume.
-
#encrypted ⇒ Boolean, ...
readonly
Indicates whether the volume should be encrypted.
-
#iops ⇒ Numeric?
readonly
The number of I/O operations per second (IOPS).
-
#kms_key_id ⇒ String?
readonly
The identifier of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use for Amazon EBS encryption.
-
#size_in_gb ⇒ Numeric?
readonly
The size of the volume, in GiBs.
-
#snapshot_id ⇒ String?
readonly
The snapshot from which to create the volume.
-
#tag_specifications ⇒ AWSCDK::IResolvable, ...
readonly
The tags passed to EBS volume.
-
#throughput ⇒ Numeric?
readonly
The throughput to provision for a volume, with a maximum of 1,000 MiB/s.
-
#volume_type ⇒ String?
readonly
The volume type.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(availability_zone:, encrypted: nil, iops: nil, kms_key_id: nil, size_in_gb: nil, snapshot_id: nil, tag_specifications: nil, throughput: nil, volume_type: nil) ⇒ CfnVolumeProps
constructor
A new instance of CfnVolumeProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(availability_zone:, encrypted: nil, iops: nil, kms_key_id: nil, size_in_gb: nil, snapshot_id: nil, tag_specifications: nil, throughput: nil, volume_type: nil) ⇒ CfnVolumeProps
Returns a new instance of CfnVolumeProps.
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'workspaces_instances/cfn_volume_props.rb', line 18 def initialize(availability_zone:, encrypted: nil, iops: nil, kms_key_id: nil, size_in_gb: nil, snapshot_id: nil, tag_specifications: nil, throughput: nil, volume_type: nil) @availability_zone = availability_zone Jsii::Type.check_type(@availability_zone, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "availabilityZone") @encrypted = encrypted Jsii::Type.check_type(@encrypted, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "encrypted") unless @encrypted.nil? @iops = iops Jsii::Type.check_type(@iops, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "iops") unless @iops.nil? @kms_key_id = kms_key_id Jsii::Type.check_type(@kms_key_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKeyId") unless @kms_key_id.nil? @size_in_gb = size_in_gb Jsii::Type.check_type(@size_in_gb, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "sizeInGb") unless @size_in_gb.nil? @snapshot_id = snapshot_id Jsii::Type.check_type(@snapshot_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "snapshotId") unless @snapshot_id.nil? @tag_specifications = tag_specifications Jsii::Type.check_type(@tag_specifications, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfd29ya3NwYWNlc2luc3RhbmNlcy5DZm5Wb2x1bWUuVGFnU3BlY2lmaWNhdGlvblByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "tagSpecifications") unless @tag_specifications.nil? @throughput = throughput Jsii::Type.check_type(@throughput, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "throughput") unless @throughput.nil? @volume_type = volume_type Jsii::Type.check_type(@volume_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "volumeType") unless @volume_type.nil? end |
Instance Attribute Details
#availability_zone ⇒ String (readonly)
The Availability Zone in which to create the volume.
43 44 45 |
# File 'workspaces_instances/cfn_volume_props.rb', line 43 def availability_zone @availability_zone end |
#encrypted ⇒ Boolean, ... (readonly)
Indicates whether the volume should be encrypted.
48 49 50 |
# File 'workspaces_instances/cfn_volume_props.rb', line 48 def encrypted @encrypted end |
#iops ⇒ Numeric? (readonly)
The number of I/O operations per second (IOPS).
53 54 55 |
# File 'workspaces_instances/cfn_volume_props.rb', line 53 def iops @iops end |
#kms_key_id ⇒ String? (readonly)
The identifier of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use for Amazon EBS encryption.
58 59 60 |
# File 'workspaces_instances/cfn_volume_props.rb', line 58 def kms_key_id @kms_key_id end |
#size_in_gb ⇒ Numeric? (readonly)
The size of the volume, in GiBs.
63 64 65 |
# File 'workspaces_instances/cfn_volume_props.rb', line 63 def size_in_gb @size_in_gb end |
#snapshot_id ⇒ String? (readonly)
The snapshot from which to create the volume.
68 69 70 |
# File 'workspaces_instances/cfn_volume_props.rb', line 68 def snapshot_id @snapshot_id end |
#tag_specifications ⇒ AWSCDK::IResolvable, ... (readonly)
The tags passed to EBS volume.
73 74 75 |
# File 'workspaces_instances/cfn_volume_props.rb', line 73 def tag_specifications @tag_specifications end |
#throughput ⇒ Numeric? (readonly)
The throughput to provision for a volume, with a maximum of 1,000 MiB/s.
78 79 80 |
# File 'workspaces_instances/cfn_volume_props.rb', line 78 def throughput @throughput end |
#volume_type ⇒ String? (readonly)
The volume type.
83 84 85 |
# File 'workspaces_instances/cfn_volume_props.rb', line 83 def volume_type @volume_type end |
Class Method Details
.jsii_properties ⇒ Object
85 86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'workspaces_instances/cfn_volume_props.rb', line 85 def self.jsii_properties { :availability_zone => "availabilityZone", :encrypted => "encrypted", :iops => "iops", :kms_key_id => "kmsKeyId", :size_in_gb => "sizeInGb", :snapshot_id => "snapshotId", :tag_specifications => "tagSpecifications", :throughput => "throughput", :volume_type => "volumeType", } end |
Instance Method Details
#to_jsii ⇒ Object
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
# File 'workspaces_instances/cfn_volume_props.rb', line 99 def to_jsii result = {} result.merge!({ "availabilityZone" => @availability_zone, "encrypted" => @encrypted, "iops" => @iops, "kmsKeyId" => @kms_key_id, "sizeInGb" => @size_in_gb, "snapshotId" => @snapshot_id, "tagSpecifications" => @tag_specifications, "throughput" => @throughput, "volumeType" => @volume_type, }) result.compact end |