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

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

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

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



/**
 * Holds the settings for a single schedule action.
 */
public class ScheduleActionSettings private constructor(builder: Builder) {
    /**
     * Action to insert HLS ID3 segment tagging
     */
    public val hlsId3SegmentTaggingSettings: aws.sdk.kotlin.services.medialive.model.HlsId3SegmentTaggingScheduleActionSettings? = builder.hlsId3SegmentTaggingSettings
    /**
     * Action to insert HLS metadata
     */
    public val hlsTimedMetadataSettings: aws.sdk.kotlin.services.medialive.model.HlsTimedMetadataScheduleActionSettings? = builder.hlsTimedMetadataSettings
    /**
     * Action to prepare an input for a future immediate input switch
     */
    public val inputPrepareSettings: aws.sdk.kotlin.services.medialive.model.InputPrepareScheduleActionSettings? = builder.inputPrepareSettings
    /**
     * Action to switch the input
     */
    public val inputSwitchSettings: aws.sdk.kotlin.services.medialive.model.InputSwitchScheduleActionSettings? = builder.inputSwitchSettings
    /**
     * Action to activate a motion graphics image overlay
     */
    public val motionGraphicsImageActivateSettings: aws.sdk.kotlin.services.medialive.model.MotionGraphicsActivateScheduleActionSettings? = builder.motionGraphicsImageActivateSettings
    /**
     * Action to deactivate a motion graphics image overlay
     */
    public val motionGraphicsImageDeactivateSettings: aws.sdk.kotlin.services.medialive.model.MotionGraphicsDeactivateScheduleActionSettings? = builder.motionGraphicsImageDeactivateSettings
    /**
     * Action to pause or unpause one or both channel pipelines
     */
    public val pauseStateSettings: aws.sdk.kotlin.services.medialive.model.PauseStateScheduleActionSettings? = builder.pauseStateSettings
    /**
     * Action to specify scte35 input
     */
    public val scte35InputSettings: aws.sdk.kotlin.services.medialive.model.Scte35InputScheduleActionSettings? = builder.scte35InputSettings
    /**
     * Action to insert SCTE-35 return_to_network message
     */
    public val scte35ReturnToNetworkSettings: aws.sdk.kotlin.services.medialive.model.Scte35ReturnToNetworkScheduleActionSettings? = builder.scte35ReturnToNetworkSettings
    /**
     * Action to insert SCTE-35 splice_insert message
     */
    public val scte35SpliceInsertSettings: aws.sdk.kotlin.services.medialive.model.Scte35SpliceInsertScheduleActionSettings? = builder.scte35SpliceInsertSettings
    /**
     * Action to insert SCTE-35 time_signal message
     */
    public val scte35TimeSignalSettings: aws.sdk.kotlin.services.medialive.model.Scte35TimeSignalScheduleActionSettings? = builder.scte35TimeSignalSettings
    /**
     * Action to activate a static image overlay
     */
    public val staticImageActivateSettings: aws.sdk.kotlin.services.medialive.model.StaticImageActivateScheduleActionSettings? = builder.staticImageActivateSettings
    /**
     * Action to deactivate a static image overlay
     */
    public val staticImageDeactivateSettings: aws.sdk.kotlin.services.medialive.model.StaticImageDeactivateScheduleActionSettings? = builder.staticImageDeactivateSettings

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

    override fun toString(): kotlin.String = buildString {
        append("ScheduleActionSettings(")
        append("hlsId3SegmentTaggingSettings=$hlsId3SegmentTaggingSettings,")
        append("hlsTimedMetadataSettings=$hlsTimedMetadataSettings,")
        append("inputPrepareSettings=$inputPrepareSettings,")
        append("inputSwitchSettings=$inputSwitchSettings,")
        append("motionGraphicsImageActivateSettings=$motionGraphicsImageActivateSettings,")
        append("motionGraphicsImageDeactivateSettings=$motionGraphicsImageDeactivateSettings,")
        append("pauseStateSettings=$pauseStateSettings,")
        append("scte35InputSettings=$scte35InputSettings,")
        append("scte35ReturnToNetworkSettings=$scte35ReturnToNetworkSettings,")
        append("scte35SpliceInsertSettings=$scte35SpliceInsertSettings,")
        append("scte35TimeSignalSettings=$scte35TimeSignalSettings,")
        append("staticImageActivateSettings=$staticImageActivateSettings,")
        append("staticImageDeactivateSettings=$staticImageDeactivateSettings")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = hlsId3SegmentTaggingSettings?.hashCode() ?: 0
        result = 31 * result + (hlsTimedMetadataSettings?.hashCode() ?: 0)
        result = 31 * result + (inputPrepareSettings?.hashCode() ?: 0)
        result = 31 * result + (inputSwitchSettings?.hashCode() ?: 0)
        result = 31 * result + (motionGraphicsImageActivateSettings?.hashCode() ?: 0)
        result = 31 * result + (motionGraphicsImageDeactivateSettings?.hashCode() ?: 0)
        result = 31 * result + (pauseStateSettings?.hashCode() ?: 0)
        result = 31 * result + (scte35InputSettings?.hashCode() ?: 0)
        result = 31 * result + (scte35ReturnToNetworkSettings?.hashCode() ?: 0)
        result = 31 * result + (scte35SpliceInsertSettings?.hashCode() ?: 0)
        result = 31 * result + (scte35TimeSignalSettings?.hashCode() ?: 0)
        result = 31 * result + (staticImageActivateSettings?.hashCode() ?: 0)
        result = 31 * result + (staticImageDeactivateSettings?.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 ScheduleActionSettings

        if (hlsId3SegmentTaggingSettings != other.hlsId3SegmentTaggingSettings) return false
        if (hlsTimedMetadataSettings != other.hlsTimedMetadataSettings) return false
        if (inputPrepareSettings != other.inputPrepareSettings) return false
        if (inputSwitchSettings != other.inputSwitchSettings) return false
        if (motionGraphicsImageActivateSettings != other.motionGraphicsImageActivateSettings) return false
        if (motionGraphicsImageDeactivateSettings != other.motionGraphicsImageDeactivateSettings) return false
        if (pauseStateSettings != other.pauseStateSettings) return false
        if (scte35InputSettings != other.scte35InputSettings) return false
        if (scte35ReturnToNetworkSettings != other.scte35ReturnToNetworkSettings) return false
        if (scte35SpliceInsertSettings != other.scte35SpliceInsertSettings) return false
        if (scte35TimeSignalSettings != other.scte35TimeSignalSettings) return false
        if (staticImageActivateSettings != other.staticImageActivateSettings) return false
        if (staticImageDeactivateSettings != other.staticImageDeactivateSettings) return false

        return true
    }

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

    public class Builder {
        /**
         * Action to insert HLS ID3 segment tagging
         */
        public var hlsId3SegmentTaggingSettings: aws.sdk.kotlin.services.medialive.model.HlsId3SegmentTaggingScheduleActionSettings? = null
        /**
         * Action to insert HLS metadata
         */
        public var hlsTimedMetadataSettings: aws.sdk.kotlin.services.medialive.model.HlsTimedMetadataScheduleActionSettings? = null
        /**
         * Action to prepare an input for a future immediate input switch
         */
        public var inputPrepareSettings: aws.sdk.kotlin.services.medialive.model.InputPrepareScheduleActionSettings? = null
        /**
         * Action to switch the input
         */
        public var inputSwitchSettings: aws.sdk.kotlin.services.medialive.model.InputSwitchScheduleActionSettings? = null
        /**
         * Action to activate a motion graphics image overlay
         */
        public var motionGraphicsImageActivateSettings: aws.sdk.kotlin.services.medialive.model.MotionGraphicsActivateScheduleActionSettings? = null
        /**
         * Action to deactivate a motion graphics image overlay
         */
        public var motionGraphicsImageDeactivateSettings: aws.sdk.kotlin.services.medialive.model.MotionGraphicsDeactivateScheduleActionSettings? = null
        /**
         * Action to pause or unpause one or both channel pipelines
         */
        public var pauseStateSettings: aws.sdk.kotlin.services.medialive.model.PauseStateScheduleActionSettings? = null
        /**
         * Action to specify scte35 input
         */
        public var scte35InputSettings: aws.sdk.kotlin.services.medialive.model.Scte35InputScheduleActionSettings? = null
        /**
         * Action to insert SCTE-35 return_to_network message
         */
        public var scte35ReturnToNetworkSettings: aws.sdk.kotlin.services.medialive.model.Scte35ReturnToNetworkScheduleActionSettings? = null
        /**
         * Action to insert SCTE-35 splice_insert message
         */
        public var scte35SpliceInsertSettings: aws.sdk.kotlin.services.medialive.model.Scte35SpliceInsertScheduleActionSettings? = null
        /**
         * Action to insert SCTE-35 time_signal message
         */
        public var scte35TimeSignalSettings: aws.sdk.kotlin.services.medialive.model.Scte35TimeSignalScheduleActionSettings? = null
        /**
         * Action to activate a static image overlay
         */
        public var staticImageActivateSettings: aws.sdk.kotlin.services.medialive.model.StaticImageActivateScheduleActionSettings? = null
        /**
         * Action to deactivate a static image overlay
         */
        public var staticImageDeactivateSettings: aws.sdk.kotlin.services.medialive.model.StaticImageDeactivateScheduleActionSettings? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.medialive.model.ScheduleActionSettings) : this() {
            this.hlsId3SegmentTaggingSettings = x.hlsId3SegmentTaggingSettings
            this.hlsTimedMetadataSettings = x.hlsTimedMetadataSettings
            this.inputPrepareSettings = x.inputPrepareSettings
            this.inputSwitchSettings = x.inputSwitchSettings
            this.motionGraphicsImageActivateSettings = x.motionGraphicsImageActivateSettings
            this.motionGraphicsImageDeactivateSettings = x.motionGraphicsImageDeactivateSettings
            this.pauseStateSettings = x.pauseStateSettings
            this.scte35InputSettings = x.scte35InputSettings
            this.scte35ReturnToNetworkSettings = x.scte35ReturnToNetworkSettings
            this.scte35SpliceInsertSettings = x.scte35SpliceInsertSettings
            this.scte35TimeSignalSettings = x.scte35TimeSignalSettings
            this.staticImageActivateSettings = x.staticImageActivateSettings
            this.staticImageDeactivateSettings = x.staticImageDeactivateSettings
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy