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

commonMain.aws.sdk.kotlin.services.iot.model.BehaviorModelTrainingSummary.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.iot.model

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

/**
 * The summary of an ML Detect behavior model.
 */
public class BehaviorModelTrainingSummary private constructor(builder: Builder) {
    /**
     * The name of the behavior.
     */
    public val behaviorName: kotlin.String? = builder.behaviorName
    /**
     * The percentage of datapoints collected.
     */
    public val datapointsCollectionPercentage: kotlin.Double? = builder.datapointsCollectionPercentage
    /**
     * The date the model was last refreshed.
     */
    public val lastModelRefreshDate: aws.smithy.kotlin.runtime.time.Instant? = builder.lastModelRefreshDate
    /**
     * The status of the behavior model.
     */
    public val modelStatus: aws.sdk.kotlin.services.iot.model.ModelStatus? = builder.modelStatus
    /**
     * The name of the security profile.
     */
    public val securityProfileName: kotlin.String? = builder.securityProfileName
    /**
     * The date a training model started collecting data.
     */
    public val trainingDataCollectionStartDate: aws.smithy.kotlin.runtime.time.Instant? = builder.trainingDataCollectionStartDate

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

    override fun toString(): kotlin.String = buildString {
        append("BehaviorModelTrainingSummary(")
        append("behaviorName=$behaviorName,")
        append("datapointsCollectionPercentage=$datapointsCollectionPercentage,")
        append("lastModelRefreshDate=$lastModelRefreshDate,")
        append("modelStatus=$modelStatus,")
        append("securityProfileName=$securityProfileName,")
        append("trainingDataCollectionStartDate=$trainingDataCollectionStartDate")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = behaviorName?.hashCode() ?: 0
        result = 31 * result + (datapointsCollectionPercentage?.hashCode() ?: 0)
        result = 31 * result + (lastModelRefreshDate?.hashCode() ?: 0)
        result = 31 * result + (modelStatus?.hashCode() ?: 0)
        result = 31 * result + (securityProfileName?.hashCode() ?: 0)
        result = 31 * result + (trainingDataCollectionStartDate?.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 BehaviorModelTrainingSummary

        if (behaviorName != other.behaviorName) return false
        if (datapointsCollectionPercentage != other.datapointsCollectionPercentage) return false
        if (lastModelRefreshDate != other.lastModelRefreshDate) return false
        if (modelStatus != other.modelStatus) return false
        if (securityProfileName != other.securityProfileName) return false
        if (trainingDataCollectionStartDate != other.trainingDataCollectionStartDate) return false

        return true
    }

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

    public class Builder {
        /**
         * The name of the behavior.
         */
        public var behaviorName: kotlin.String? = null
        /**
         * The percentage of datapoints collected.
         */
        public var datapointsCollectionPercentage: kotlin.Double? = null
        /**
         * The date the model was last refreshed.
         */
        public var lastModelRefreshDate: aws.smithy.kotlin.runtime.time.Instant? = null
        /**
         * The status of the behavior model.
         */
        public var modelStatus: aws.sdk.kotlin.services.iot.model.ModelStatus? = null
        /**
         * The name of the security profile.
         */
        public var securityProfileName: kotlin.String? = null
        /**
         * The date a training model started collecting data.
         */
        public var trainingDataCollectionStartDate: aws.smithy.kotlin.runtime.time.Instant? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.iot.model.BehaviorModelTrainingSummary) : this() {
            this.behaviorName = x.behaviorName
            this.datapointsCollectionPercentage = x.datapointsCollectionPercentage
            this.lastModelRefreshDate = x.lastModelRefreshDate
            this.modelStatus = x.modelStatus
            this.securityProfileName = x.securityProfileName
            this.trainingDataCollectionStartDate = x.trainingDataCollectionStartDate
        }

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy