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

commonMain.aws.sdk.kotlin.services.kinesisvideo.model.DescribeEdgeConfigurationResponse.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.kinesisvideo.model

import aws.smithy.kotlin.runtime.SdkDsl
import aws.smithy.kotlin.runtime.time.Instant

public class DescribeEdgeConfigurationResponse private constructor(builder: Builder) {
    /**
     * The timestamp at which a stream’s edge configuration was first created.
     */
    public val creationTime: aws.smithy.kotlin.runtime.time.Instant? = builder.creationTime
    /**
     * An object that contains the latest status details for an edge agent's recorder and uploader jobs. Use this information to determine the current health of an edge agent.
     */
    public val edgeAgentStatus: aws.sdk.kotlin.services.kinesisvideo.model.EdgeAgentStatus? = builder.edgeAgentStatus
    /**
     * A description of the stream's edge configuration that will be used to sync with the Edge Agent IoT Greengrass component. The Edge Agent component will run on an IoT Hub Device setup at your premise.
     */
    public val edgeConfig: aws.sdk.kotlin.services.kinesisvideo.model.EdgeConfig? = builder.edgeConfig
    /**
     * A description of the generated failure status.
     */
    public val failedStatusDetails: kotlin.String? = builder.failedStatusDetails
    /**
     * The timestamp at which a stream’s edge configuration was last updated.
     */
    public val lastUpdatedTime: aws.smithy.kotlin.runtime.time.Instant? = builder.lastUpdatedTime
    /**
     * The Amazon Resource Name (ARN) of the stream.
     */
    public val streamArn: kotlin.String? = builder.streamArn
    /**
     * The name of the stream from which the edge configuration was updated.
     */
    public val streamName: kotlin.String? = builder.streamName
    /**
     * The latest status of the edge configuration update.
     */
    public val syncStatus: aws.sdk.kotlin.services.kinesisvideo.model.SyncStatus? = builder.syncStatus

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

    override fun toString(): kotlin.String = buildString {
        append("DescribeEdgeConfigurationResponse(")
        append("creationTime=$creationTime,")
        append("edgeAgentStatus=$edgeAgentStatus,")
        append("edgeConfig=$edgeConfig,")
        append("failedStatusDetails=$failedStatusDetails,")
        append("lastUpdatedTime=$lastUpdatedTime,")
        append("streamArn=$streamArn,")
        append("streamName=$streamName,")
        append("syncStatus=$syncStatus")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = creationTime?.hashCode() ?: 0
        result = 31 * result + (edgeAgentStatus?.hashCode() ?: 0)
        result = 31 * result + (edgeConfig?.hashCode() ?: 0)
        result = 31 * result + (failedStatusDetails?.hashCode() ?: 0)
        result = 31 * result + (lastUpdatedTime?.hashCode() ?: 0)
        result = 31 * result + (streamArn?.hashCode() ?: 0)
        result = 31 * result + (streamName?.hashCode() ?: 0)
        result = 31 * result + (syncStatus?.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 DescribeEdgeConfigurationResponse

        if (creationTime != other.creationTime) return false
        if (edgeAgentStatus != other.edgeAgentStatus) return false
        if (edgeConfig != other.edgeConfig) return false
        if (failedStatusDetails != other.failedStatusDetails) return false
        if (lastUpdatedTime != other.lastUpdatedTime) return false
        if (streamArn != other.streamArn) return false
        if (streamName != other.streamName) return false
        if (syncStatus != other.syncStatus) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * The timestamp at which a stream’s edge configuration was first created.
         */
        public var creationTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * An object that contains the latest status details for an edge agent's recorder and uploader jobs. Use this information to determine the current health of an edge agent.
         */
        public var edgeAgentStatus: aws.sdk.kotlin.services.kinesisvideo.model.EdgeAgentStatus? = null
        /**
         * A description of the stream's edge configuration that will be used to sync with the Edge Agent IoT Greengrass component. The Edge Agent component will run on an IoT Hub Device setup at your premise.
         */
        public var edgeConfig: aws.sdk.kotlin.services.kinesisvideo.model.EdgeConfig? = null
        /**
         * A description of the generated failure status.
         */
        public var failedStatusDetails: kotlin.String? = null
        /**
         * The timestamp at which a stream’s edge configuration was last updated.
         */
        public var lastUpdatedTime: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * The Amazon Resource Name (ARN) of the stream.
         */
        public var streamArn: kotlin.String? = null
        /**
         * The name of the stream from which the edge configuration was updated.
         */
        public var streamName: kotlin.String? = null
        /**
         * The latest status of the edge configuration update.
         */
        public var syncStatus: aws.sdk.kotlin.services.kinesisvideo.model.SyncStatus? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.kinesisvideo.model.DescribeEdgeConfigurationResponse) : this() {
            this.creationTime = x.creationTime
            this.edgeAgentStatus = x.edgeAgentStatus
            this.edgeConfig = x.edgeConfig
            this.failedStatusDetails = x.failedStatusDetails
            this.lastUpdatedTime = x.lastUpdatedTime
            this.streamArn = x.streamArn
            this.streamName = x.streamName
            this.syncStatus = x.syncStatus
        }

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

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

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy