All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.aws.sdk.kotlin.services.mediaconvert.model.WebvttHlsSourceSettings.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.mediaconvert.model



/**
 * Settings specific to WebVTT sources in HLS alternative rendition group. Specify the properties (renditionGroupId, renditionName or renditionLanguageCode) to identify the unique subtitle track among the alternative rendition groups present in the HLS manifest. If no unique track is found, or multiple tracks match the specified properties, the job fails. If there is only one subtitle track in the rendition group, the settings can be left empty and the default subtitle track will be chosen. If your caption source is a sidecar file, use FileSourceSettings instead of WebvttHlsSourceSettings.
 */
public class WebvttHlsSourceSettings private constructor(builder: Builder) {
    /**
     * Optional. Specify alternative group ID
     */
    public val renditionGroupId: kotlin.String? = builder.renditionGroupId
    /**
     * Optional. Specify ISO 639-2 or ISO 639-3 code in the language property
     */
    public val renditionLanguageCode: aws.sdk.kotlin.services.mediaconvert.model.LanguageCode? = builder.renditionLanguageCode
    /**
     * Optional. Specify media name
     */
    public val renditionName: kotlin.String? = builder.renditionName

    public companion object {
        public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.mediaconvert.model.WebvttHlsSourceSettings = Builder().apply(block).build()
    }

    override fun toString(): kotlin.String = buildString {
        append("WebvttHlsSourceSettings(")
        append("renditionGroupId=$renditionGroupId,")
        append("renditionLanguageCode=$renditionLanguageCode,")
        append("renditionName=$renditionName")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = renditionGroupId?.hashCode() ?: 0
        result = 31 * result + (renditionLanguageCode?.hashCode() ?: 0)
        result = 31 * result + (renditionName?.hashCode() ?: 0)
        return result
    }

    override fun equals(other: kotlin.Any?): kotlin.Boolean {
        if (this === other) return true
        if (other == null || this::class != other::class) return false

        other as WebvttHlsSourceSettings

        if (renditionGroupId != other.renditionGroupId) return false
        if (renditionLanguageCode != other.renditionLanguageCode) return false
        if (renditionName != other.renditionName) return false

        return true
    }

    public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.mediaconvert.model.WebvttHlsSourceSettings = Builder(this).apply(block).build()

    public class Builder {
        /**
         * Optional. Specify alternative group ID
         */
        public var renditionGroupId: kotlin.String? = null
        /**
         * Optional. Specify ISO 639-2 or ISO 639-3 code in the language property
         */
        public var renditionLanguageCode: aws.sdk.kotlin.services.mediaconvert.model.LanguageCode? = null
        /**
         * Optional. Specify media name
         */
        public var renditionName: kotlin.String? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.mediaconvert.model.WebvttHlsSourceSettings) : this() {
            this.renditionGroupId = x.renditionGroupId
            this.renditionLanguageCode = x.renditionLanguageCode
            this.renditionName = x.renditionName
        }

        @PublishedApi
        internal fun build(): aws.sdk.kotlin.services.mediaconvert.model.WebvttHlsSourceSettings = WebvttHlsSourceSettings(this)

        internal fun correctErrors(): Builder {
            return this
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy