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

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

There is a newer version: 1.3.34
Show newest version
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

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

import aws.smithy.kotlin.runtime.SdkDsl

/**
 * Specify the details for each pair of HLS and DASH additional manifests that you want the service to generate for this CMAF output group. Each pair of manifests can reference a different subset of outputs in the group.
 */
public class CmafAdditionalManifest private constructor(builder: Builder) {
    /**
     * Specify a name modifier that the service adds to the name of this manifest to make it different from the file names of the other main manifests in the output group. For example, say that the default main manifest for your HLS group is film-name.m3u8. If you enter "-no-premium" for this setting, then the file name the service generates for this top-level manifest is film-name-no-premium.m3u8. For HLS output groups, specify a manifestNameModifier that is different from the nameModifier of the output. The service uses the output name modifier to create unique names for the individual variant manifests.
     */
    public val manifestNameModifier: kotlin.String? = builder.manifestNameModifier
    /**
     * Specify the outputs that you want this additional top-level manifest to reference.
     */
    public val selectedOutputs: List? = builder.selectedOutputs

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

    override fun toString(): kotlin.String = buildString {
        append("CmafAdditionalManifest(")
        append("manifestNameModifier=$manifestNameModifier,")
        append("selectedOutputs=$selectedOutputs")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = manifestNameModifier?.hashCode() ?: 0
        result = 31 * result + (selectedOutputs?.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 CmafAdditionalManifest

        if (manifestNameModifier != other.manifestNameModifier) return false
        if (selectedOutputs != other.selectedOutputs) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * Specify a name modifier that the service adds to the name of this manifest to make it different from the file names of the other main manifests in the output group. For example, say that the default main manifest for your HLS group is film-name.m3u8. If you enter "-no-premium" for this setting, then the file name the service generates for this top-level manifest is film-name-no-premium.m3u8. For HLS output groups, specify a manifestNameModifier that is different from the nameModifier of the output. The service uses the output name modifier to create unique names for the individual variant manifests.
         */
        public var manifestNameModifier: kotlin.String? = null
        /**
         * Specify the outputs that you want this additional top-level manifest to reference.
         */
        public var selectedOutputs: List? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.mediaconvert.model.CmafAdditionalManifest) : this() {
            this.manifestNameModifier = x.manifestNameModifier
            this.selectedOutputs = x.selectedOutputs
        }

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy