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

commonMain.aws.sdk.kotlin.services.lookoutequipment.model.DescribeInferenceSchedulerResponse.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.lookoutequipment.model

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

public class DescribeInferenceSchedulerResponse private constructor(builder: Builder) {
    /**
     * Specifies the time at which the inference scheduler was created.
     */
    public val createdAt: aws.smithy.kotlin.runtime.time.Instant? = builder.createdAt
    /**
     * A period of time (in minutes) by which inference on the data is delayed after the data starts. For instance, if you select an offset delay time of five minutes, inference will not begin on the data until the first data measurement after the five minute mark. For example, if five minutes is selected, the inference scheduler will wake up at the configured frequency with the additional five minute delay time to check the customer S3 bucket. The customer can upload data at the same frequency and they don't need to stop and restart the scheduler when uploading new data.
     */
    public val dataDelayOffsetInMinutes: kotlin.Long? = builder.dataDelayOffsetInMinutes
    /**
     * Specifies configuration information for the input data for the inference scheduler, including delimiter, format, and dataset location.
     */
    public val dataInputConfiguration: aws.sdk.kotlin.services.lookoutequipment.model.InferenceInputConfiguration? = builder.dataInputConfiguration
    /**
     * Specifies information for the output results for the inference scheduler, including the output S3 location.
     */
    public val dataOutputConfiguration: aws.sdk.kotlin.services.lookoutequipment.model.InferenceOutputConfiguration? = builder.dataOutputConfiguration
    /**
     * Specifies how often data is uploaded to the source S3 bucket for the input data. This value is the length of time between data uploads. For instance, if you select 5 minutes, Amazon Lookout for Equipment will upload the real-time data to the source bucket once every 5 minutes. This frequency also determines how often Amazon Lookout for Equipment starts a scheduled inference on your data. In this example, it starts once every 5 minutes.
     */
    public val dataUploadFrequency: aws.sdk.kotlin.services.lookoutequipment.model.DataUploadFrequency? = builder.dataUploadFrequency
    /**
     * The Amazon Resource Name (ARN) of the inference scheduler being described.
     */
    public val inferenceSchedulerArn: kotlin.String? = builder.inferenceSchedulerArn
    /**
     * The name of the inference scheduler being described.
     */
    public val inferenceSchedulerName: kotlin.String? = builder.inferenceSchedulerName
    /**
     * Indicates whether the latest execution for the inference scheduler was Anomalous (anomalous events found) or Normal (no anomalous events found).
     */
    public val latestInferenceResult: aws.sdk.kotlin.services.lookoutequipment.model.LatestInferenceResult? = builder.latestInferenceResult
    /**
     * The Amazon Resource Name (ARN) of the machine learning model of the inference scheduler being described.
     */
    public val modelArn: kotlin.String? = builder.modelArn
    /**
     * The name of the machine learning model of the inference scheduler being described.
     */
    public val modelName: kotlin.String? = builder.modelName
    /**
     * The Amazon Resource Name (ARN) of a role with permission to access the data source for the inference scheduler being described.
     */
    public val roleArn: kotlin.String? = builder.roleArn
    /**
     * Provides the identifier of the KMS key used to encrypt inference scheduler data by Amazon Lookout for Equipment.
     */
    public val serverSideKmsKeyId: kotlin.String? = builder.serverSideKmsKeyId
    /**
     * Indicates the status of the inference scheduler.
     */
    public val status: aws.sdk.kotlin.services.lookoutequipment.model.InferenceSchedulerStatus? = builder.status
    /**
     * Specifies the time at which the inference scheduler was last updated, if it was.
     */
    public val updatedAt: aws.smithy.kotlin.runtime.time.Instant? = builder.updatedAt

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

    override fun toString(): kotlin.String = buildString {
        append("DescribeInferenceSchedulerResponse(")
        append("createdAt=$createdAt,")
        append("dataDelayOffsetInMinutes=$dataDelayOffsetInMinutes,")
        append("dataInputConfiguration=$dataInputConfiguration,")
        append("dataOutputConfiguration=$dataOutputConfiguration,")
        append("dataUploadFrequency=$dataUploadFrequency,")
        append("inferenceSchedulerArn=$inferenceSchedulerArn,")
        append("inferenceSchedulerName=$inferenceSchedulerName,")
        append("latestInferenceResult=$latestInferenceResult,")
        append("modelArn=$modelArn,")
        append("modelName=$modelName,")
        append("roleArn=$roleArn,")
        append("serverSideKmsKeyId=$serverSideKmsKeyId,")
        append("status=$status,")
        append("updatedAt=$updatedAt")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = createdAt?.hashCode() ?: 0
        result = 31 * result + (dataDelayOffsetInMinutes?.hashCode() ?: 0)
        result = 31 * result + (dataInputConfiguration?.hashCode() ?: 0)
        result = 31 * result + (dataOutputConfiguration?.hashCode() ?: 0)
        result = 31 * result + (dataUploadFrequency?.hashCode() ?: 0)
        result = 31 * result + (inferenceSchedulerArn?.hashCode() ?: 0)
        result = 31 * result + (inferenceSchedulerName?.hashCode() ?: 0)
        result = 31 * result + (latestInferenceResult?.hashCode() ?: 0)
        result = 31 * result + (modelArn?.hashCode() ?: 0)
        result = 31 * result + (modelName?.hashCode() ?: 0)
        result = 31 * result + (roleArn?.hashCode() ?: 0)
        result = 31 * result + (serverSideKmsKeyId?.hashCode() ?: 0)
        result = 31 * result + (status?.hashCode() ?: 0)
        result = 31 * result + (updatedAt?.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 DescribeInferenceSchedulerResponse

        if (createdAt != other.createdAt) return false
        if (dataDelayOffsetInMinutes != other.dataDelayOffsetInMinutes) return false
        if (dataInputConfiguration != other.dataInputConfiguration) return false
        if (dataOutputConfiguration != other.dataOutputConfiguration) return false
        if (dataUploadFrequency != other.dataUploadFrequency) return false
        if (inferenceSchedulerArn != other.inferenceSchedulerArn) return false
        if (inferenceSchedulerName != other.inferenceSchedulerName) return false
        if (latestInferenceResult != other.latestInferenceResult) return false
        if (modelArn != other.modelArn) return false
        if (modelName != other.modelName) return false
        if (roleArn != other.roleArn) return false
        if (serverSideKmsKeyId != other.serverSideKmsKeyId) return false
        if (status != other.status) return false
        if (updatedAt != other.updatedAt) return false

        return true
    }

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

    @SdkDsl
    public class Builder {
        /**
         * Specifies the time at which the inference scheduler was created.
         */
        public var createdAt: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * A period of time (in minutes) by which inference on the data is delayed after the data starts. For instance, if you select an offset delay time of five minutes, inference will not begin on the data until the first data measurement after the five minute mark. For example, if five minutes is selected, the inference scheduler will wake up at the configured frequency with the additional five minute delay time to check the customer S3 bucket. The customer can upload data at the same frequency and they don't need to stop and restart the scheduler when uploading new data.
         */
        public var dataDelayOffsetInMinutes: kotlin.Long? = null
        /**
         * Specifies configuration information for the input data for the inference scheduler, including delimiter, format, and dataset location.
         */
        public var dataInputConfiguration: aws.sdk.kotlin.services.lookoutequipment.model.InferenceInputConfiguration? = null
        /**
         * Specifies information for the output results for the inference scheduler, including the output S3 location.
         */
        public var dataOutputConfiguration: aws.sdk.kotlin.services.lookoutequipment.model.InferenceOutputConfiguration? = null
        /**
         * Specifies how often data is uploaded to the source S3 bucket for the input data. This value is the length of time between data uploads. For instance, if you select 5 minutes, Amazon Lookout for Equipment will upload the real-time data to the source bucket once every 5 minutes. This frequency also determines how often Amazon Lookout for Equipment starts a scheduled inference on your data. In this example, it starts once every 5 minutes.
         */
        public var dataUploadFrequency: aws.sdk.kotlin.services.lookoutequipment.model.DataUploadFrequency? = null
        /**
         * The Amazon Resource Name (ARN) of the inference scheduler being described.
         */
        public var inferenceSchedulerArn: kotlin.String? = null
        /**
         * The name of the inference scheduler being described.
         */
        public var inferenceSchedulerName: kotlin.String? = null
        /**
         * Indicates whether the latest execution for the inference scheduler was Anomalous (anomalous events found) or Normal (no anomalous events found).
         */
        public var latestInferenceResult: aws.sdk.kotlin.services.lookoutequipment.model.LatestInferenceResult? = null
        /**
         * The Amazon Resource Name (ARN) of the machine learning model of the inference scheduler being described.
         */
        public var modelArn: kotlin.String? = null
        /**
         * The name of the machine learning model of the inference scheduler being described.
         */
        public var modelName: kotlin.String? = null
        /**
         * The Amazon Resource Name (ARN) of a role with permission to access the data source for the inference scheduler being described.
         */
        public var roleArn: kotlin.String? = null
        /**
         * Provides the identifier of the KMS key used to encrypt inference scheduler data by Amazon Lookout for Equipment.
         */
        public var serverSideKmsKeyId: kotlin.String? = null
        /**
         * Indicates the status of the inference scheduler.
         */
        public var status: aws.sdk.kotlin.services.lookoutequipment.model.InferenceSchedulerStatus? = null
        /**
         * Specifies the time at which the inference scheduler was last updated, if it was.
         */
        public var updatedAt: aws.smithy.kotlin.runtime.time.Instant? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.lookoutequipment.model.DescribeInferenceSchedulerResponse) : this() {
            this.createdAt = x.createdAt
            this.dataDelayOffsetInMinutes = x.dataDelayOffsetInMinutes
            this.dataInputConfiguration = x.dataInputConfiguration
            this.dataOutputConfiguration = x.dataOutputConfiguration
            this.dataUploadFrequency = x.dataUploadFrequency
            this.inferenceSchedulerArn = x.inferenceSchedulerArn
            this.inferenceSchedulerName = x.inferenceSchedulerName
            this.latestInferenceResult = x.latestInferenceResult
            this.modelArn = x.modelArn
            this.modelName = x.modelName
            this.roleArn = x.roleArn
            this.serverSideKmsKeyId = x.serverSideKmsKeyId
            this.status = x.status
            this.updatedAt = x.updatedAt
        }

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

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

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

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy