Class: AWSCDK::MediaPackagev2::CfnOriginEndpoint::MssManifestConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
media_packagev2/cfn_origin_endpoint.rb

Overview

Configuration details for a Microsoft Smooth Streaming (MSS) manifest associated with an origin endpoint. This includes all the settings and properties that define how the MSS content is packaged and delivered.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(manifest_name:, filter_configuration: nil, manifest_layout: nil, manifest_window_seconds: nil) ⇒ MssManifestConfigurationProperty

Returns a new instance of MssManifestConfigurationProperty.

Parameters:

  • manifest_name (String)

    The name of the MSS manifest.

  • filter_configuration (AWSCDK::IResolvable, AWSCDK::MediaPackagev2::CfnOriginEndpoint::FilterConfigurationProperty, nil) (defaults to: nil)

    Filter configuration includes settings for manifest filtering, start and end times, and time delay that apply to all of your egress requests for this manifest.

  • manifest_layout (String, nil) (defaults to: nil)
  • manifest_window_seconds (Numeric, nil) (defaults to: nil)

    The duration (in seconds) of the manifest window.



1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
# File 'media_packagev2/cfn_origin_endpoint.rb', line 1999

def initialize(manifest_name:, filter_configuration: nil, manifest_layout: nil, manifest_window_seconds: nil)
  @manifest_name = manifest_name
  Jsii::Type.check_type(@manifest_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "manifestName")
  @filter_configuration = filter_configuration.is_a?(Hash) ? ::AWSCDK::MediaPackagev2::CfnOriginEndpoint::FilterConfigurationProperty.new(**filter_configuration.transform_keys(&:to_sym)) : filter_configuration
  Jsii::Type.check_type(@filter_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19tZWRpYXBhY2thZ2V2Mi5DZm5PcmlnaW5FbmRwb2ludC5GaWx0ZXJDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "filterConfiguration") unless @filter_configuration.nil?
  @manifest_layout = manifest_layout
  Jsii::Type.check_type(@manifest_layout, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "manifestLayout") unless @manifest_layout.nil?
  @manifest_window_seconds = manifest_window_seconds
  Jsii::Type.check_type(@manifest_window_seconds, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "manifestWindowSeconds") unless @manifest_window_seconds.nil?
end

Instance Attribute Details

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

Filter configuration includes settings for manifest filtering, start and end times, and time delay that apply to all of your egress requests for this manifest.



2023
2024
2025
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2023

def filter_configuration
  @filter_configuration
end

#manifest_layoutString? (readonly)



2026
2027
2028
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2026

def manifest_layout
  @manifest_layout
end

#manifest_nameString (readonly)

The name of the MSS manifest. This name is appended to the origin endpoint URL to create the unique path for accessing this specific MSS manifest.



2016
2017
2018
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2016

def manifest_name
  @manifest_name
end

#manifest_window_secondsNumeric? (readonly)

The duration (in seconds) of the manifest window. This represents the total amount of content available in the manifest at any given time.



2033
2034
2035
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2033

def manifest_window_seconds
  @manifest_window_seconds
end

Class Method Details

.jsii_propertiesObject



2035
2036
2037
2038
2039
2040
2041
2042
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2035

def self.jsii_properties
  {
    :manifest_name => "manifestName",
    :filter_configuration => "filterConfiguration",
    :manifest_layout => "manifestLayout",
    :manifest_window_seconds => "manifestWindowSeconds",
  }
end

Instance Method Details

#to_jsiiObject



2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
# File 'media_packagev2/cfn_origin_endpoint.rb', line 2044

def to_jsii
  result = {}
  result.merge!({
    "manifestName" => @manifest_name,
    "filterConfiguration" => @filter_configuration,
    "manifestLayout" => @manifest_layout,
    "manifestWindowSeconds" => @manifest_window_seconds,
  })
  result.compact
end