Class: AWSCDK::MediaTailor::CfnChannelProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
media_tailor/cfn_channel_props.rb

Overview

Properties for defining a CfnChannel.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(channel_name:, outputs:, playback_mode:, audiences: nil, filler_slate: nil, log_configuration: nil, tags: nil, tier: nil, time_shift_configuration: nil) ⇒ CfnChannelProps

Returns a new instance of CfnChannelProps.

Parameters:



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'media_tailor/cfn_channel_props.rb', line 18

def initialize(channel_name:, outputs:, playback_mode:, audiences: nil, filler_slate: nil, log_configuration: nil, tags: nil, tier: nil, time_shift_configuration: nil)
  @channel_name = channel_name
  Jsii::Type.check_type(@channel_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "channelName")
  @outputs = outputs
  Jsii::Type.check_type(@outputs, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbWVkaWF0YWlsb3IuQ2ZuQ2hhbm5lbC5SZXF1ZXN0T3V0cHV0SXRlbVByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "outputs")
  @playback_mode = playback_mode
  Jsii::Type.check_type(@playback_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "playbackMode")
  @audiences = audiences
  Jsii::Type.check_type(@audiences, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "audiences") unless @audiences.nil?
  @filler_slate = filler_slate.is_a?(Hash) ? ::AWSCDK::MediaTailor::CfnChannel::SlateSourceProperty.new(**filler_slate.transform_keys(&:to_sym)) : filler_slate
  Jsii::Type.check_type(@filler_slate, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXRhaWxvci5DZm5DaGFubmVsLlNsYXRlU291cmNlUHJvcGVydHkifV19fQ==")), "fillerSlate") unless @filler_slate.nil?
  @log_configuration = log_configuration.is_a?(Hash) ? ::AWSCDK::MediaTailor::CfnChannel::LogConfigurationForChannelProperty.new(**log_configuration.transform_keys(&:to_sym)) : log_configuration
  Jsii::Type.check_type(@log_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXRhaWxvci5DZm5DaGFubmVsLkxvZ0NvbmZpZ3VyYXRpb25Gb3JDaGFubmVsUHJvcGVydHkifV19fQ==")), "logConfiguration") unless @log_configuration.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?
  @tier = tier
  Jsii::Type.check_type(@tier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "tier") unless @tier.nil?
  @time_shift_configuration = time_shift_configuration.is_a?(Hash) ? ::AWSCDK::MediaTailor::CfnChannel::TimeShiftConfigurationProperty.new(**time_shift_configuration.transform_keys(&:to_sym)) : time_shift_configuration
  Jsii::Type.check_type(@time_shift_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXRhaWxvci5DZm5DaGFubmVsLlRpbWVTaGlmdENvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "timeShiftConfiguration") unless @time_shift_configuration.nil?
end

Instance Attribute Details

#audiencesArray<String>? (readonly)

The list of audiences defined in channel.



62
63
64
# File 'media_tailor/cfn_channel_props.rb', line 62

def audiences
  @audiences
end

#channel_nameString (readonly)

The name of the channel.



43
44
45
# File 'media_tailor/cfn_channel_props.rb', line 43

def channel_name
  @channel_name
end

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

The slate used to fill gaps between programs in the schedule.

You must configure filler slate if your channel uses the LINEAR PlaybackMode . MediaTailor doesn't support filler slate for channels using the LOOP PlaybackMode .



69
70
71
# File 'media_tailor/cfn_channel_props.rb', line 69

def filler_slate
  @filler_slate
end

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

The log configuration.



74
75
76
# File 'media_tailor/cfn_channel_props.rb', line 74

def log_configuration
  @log_configuration
end

#playback_modeString (readonly)

The type of playback mode for this channel.

LINEAR - Programs play back-to-back only once.

LOOP - Programs play back-to-back in an endless loop. When the last program in the schedule plays, playback loops back to the first program in the schedule.



57
58
59
# File 'media_tailor/cfn_channel_props.rb', line 57

def playback_mode
  @playback_mode
end

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

The tags to assign to the channel.

Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources .



81
82
83
# File 'media_tailor/cfn_channel_props.rb', line 81

def tags
  @tags
end

#tierString? (readonly)

The tier for this channel.

STANDARD tier channels can contain live programs.



88
89
90
# File 'media_tailor/cfn_channel_props.rb', line 88

def tier
  @tier
end

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

The configuration for time-shifted viewing.



93
94
95
# File 'media_tailor/cfn_channel_props.rb', line 93

def time_shift_configuration
  @time_shift_configuration
end

Class Method Details

.jsii_propertiesObject



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

def self.jsii_properties
  {
    :channel_name => "channelName",
    :outputs => "outputs",
    :playback_mode => "playbackMode",
    :audiences => "audiences",
    :filler_slate => "fillerSlate",
    :log_configuration => "logConfiguration",
    :tags => "tags",
    :tier => "tier",
    :time_shift_configuration => "timeShiftConfiguration",
  }
end

Instance Method Details

#to_jsiiObject



109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'media_tailor/cfn_channel_props.rb', line 109

def to_jsii
  result = {}
  result.merge!({
    "channelName" => @channel_name,
    "outputs" => @outputs,
    "playbackMode" => @playback_mode,
    "audiences" => @audiences,
    "fillerSlate" => @filler_slate,
    "logConfiguration" => @log_configuration,
    "tags" => @tags,
    "tier" => @tier,
    "timeShiftConfiguration" => @time_shift_configuration,
  })
  result.compact
end