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

commonMain.aws.sdk.kotlin.services.medialive.model.AvailConfiguration.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.medialive.model



/**
 * Avail Configuration
 */
public class AvailConfiguration private constructor(builder: Builder) {
    /**
     * Controls how SCTE-35 messages create cues. Splice Insert mode treats all segmentation signals traditionally. With Time Signal APOS mode only Time Signal Placement Opportunity and Break messages create segment breaks. With ESAM mode, signals are forwarded to an ESAM server for possible update.
     */
    public val availSettings: aws.sdk.kotlin.services.medialive.model.AvailSettings? = builder.availSettings

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

    override fun toString(): kotlin.String = buildString {
        append("AvailConfiguration(")
        append("availSettings=$availSettings")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = availSettings?.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 AvailConfiguration

        if (availSettings != other.availSettings) return false

        return true
    }

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

    public class Builder {
        /**
         * Controls how SCTE-35 messages create cues. Splice Insert mode treats all segmentation signals traditionally. With Time Signal APOS mode only Time Signal Placement Opportunity and Break messages create segment breaks. With ESAM mode, signals are forwarded to an ESAM server for possible update.
         */
        public var availSettings: aws.sdk.kotlin.services.medialive.model.AvailSettings? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.medialive.model.AvailConfiguration) : this() {
            this.availSettings = x.availSettings
        }

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

        /**
         * construct an [aws.sdk.kotlin.services.medialive.model.AvailSettings] inside the given [block]
         */
        public fun availSettings(block: aws.sdk.kotlin.services.medialive.model.AvailSettings.Builder.() -> kotlin.Unit) {
            this.availSettings = aws.sdk.kotlin.services.medialive.model.AvailSettings.invoke(block)
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy