Class: AWSCDK::KinesisVideo::CfnStreamProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::KinesisVideo::CfnStreamProps
- Defined in:
- kinesis_video/cfn_stream_props.rb
Overview
Properties for defining a CfnStream.
Instance Attribute Summary collapse
-
#data_retention_in_hours ⇒ Numeric?
readonly
How long the stream retains data, in hours.
-
#device_name ⇒ String?
readonly
The name of the device that is associated with the stream.
-
#kms_key_id ⇒ String?
readonly
The ID of the AWS Key Management Service ( AWS ) key that Kinesis Video Streams uses to encrypt data on the stream.
-
#media_type ⇒ String?
readonly
The
MediaTypeof the stream. -
#name ⇒ String?
readonly
The name of the stream.
-
#stream_storage_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The configuration for stream storage, including the default storage tier for stream data.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
An array of key-value pairs to apply to this resource.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(data_retention_in_hours: nil, device_name: nil, kms_key_id: nil, media_type: nil, name: nil, stream_storage_configuration: nil, tags: nil) ⇒ CfnStreamProps
constructor
A new instance of CfnStreamProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(data_retention_in_hours: nil, device_name: nil, kms_key_id: nil, media_type: nil, name: nil, stream_storage_configuration: nil, tags: nil) ⇒ CfnStreamProps
Returns a new instance of CfnStreamProps.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'kinesis_video/cfn_stream_props.rb', line 16 def initialize(data_retention_in_hours: nil, device_name: nil, kms_key_id: nil, media_type: nil, name: nil, stream_storage_configuration: nil, tags: nil) @data_retention_in_hours = data_retention_in_hours Jsii::Type.check_type(@data_retention_in_hours, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "dataRetentionInHours") unless @data_retention_in_hours.nil? @device_name = device_name Jsii::Type.check_type(@device_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "deviceName") unless @device_name.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? @media_type = media_type Jsii::Type.check_type(@media_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "mediaType") unless @media_type.nil? @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil? @stream_storage_configuration = stream_storage_configuration.is_a?(Hash) ? ::AWSCDK::KinesisVideo::CfnStream::StreamStorageConfigurationProperty.new(**stream_storage_configuration.transform_keys(&:to_sym)) : stream_storage_configuration Jsii::Type.check_type(@stream_storage_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzdmlkZW8uQ2ZuU3RyZWFtLlN0cmVhbVN0b3JhZ2VDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "streamStorageConfiguration") unless @stream_storage_configuration.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#data_retention_in_hours ⇒ Numeric? (readonly)
How long the stream retains data, in hours.
37 38 39 |
# File 'kinesis_video/cfn_stream_props.rb', line 37 def data_retention_in_hours @data_retention_in_hours end |
#device_name ⇒ String? (readonly)
The name of the device that is associated with the stream.
42 43 44 |
# File 'kinesis_video/cfn_stream_props.rb', line 42 def device_name @device_name end |
#kms_key_id ⇒ String? (readonly)
The ID of the AWS Key Management Service ( AWS ) key that Kinesis Video Streams uses to encrypt data on the stream.
47 48 49 |
# File 'kinesis_video/cfn_stream_props.rb', line 47 def kms_key_id @kms_key_id end |
#media_type ⇒ String? (readonly)
The MediaType of the stream.
52 53 54 |
# File 'kinesis_video/cfn_stream_props.rb', line 52 def media_type @media_type end |
#name ⇒ String? (readonly)
The name of the stream.
57 58 59 |
# File 'kinesis_video/cfn_stream_props.rb', line 57 def name @name end |
#stream_storage_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The configuration for stream storage, including the default storage tier for stream data.
This configuration determines how stream data is stored and accessed, with different tiers offering varying levels of performance and cost optimization.
64 65 66 |
# File 'kinesis_video/cfn_stream_props.rb', line 64 def stream_storage_configuration @stream_storage_configuration end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
An array of key-value pairs to apply to this resource.
For more information, see Tag .
71 72 73 |
# File 'kinesis_video/cfn_stream_props.rb', line 71 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 |
# File 'kinesis_video/cfn_stream_props.rb', line 73 def self.jsii_properties { :data_retention_in_hours => "dataRetentionInHours", :device_name => "deviceName", :kms_key_id => "kmsKeyId", :media_type => "mediaType", :name => "name", :stream_storage_configuration => "streamStorageConfiguration", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
85 86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'kinesis_video/cfn_stream_props.rb', line 85 def to_jsii result = {} result.merge!({ "dataRetentionInHours" => @data_retention_in_hours, "deviceName" => @device_name, "kmsKeyId" => @kms_key_id, "mediaType" => @media_type, "name" => @name, "streamStorageConfiguration" => @stream_storage_configuration, "tags" => @tags, }) result.compact end |