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

commonMain.aws.sdk.kotlin.services.rum.model.DataStorage.kt Maven / Gradle / Ivy

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

package aws.sdk.kotlin.services.rum.model



/**
 * A structure that contains information about whether this app monitor stores a copy of the telemetry data that RUM collects using CloudWatch Logs.
 */
public class DataStorage private constructor(builder: Builder) {
    /**
     * A structure that contains the information about whether the app monitor stores copies of the data that RUM collects in CloudWatch Logs. If it does, this structure also contains the name of the log group.
     */
    public val cwLog: aws.sdk.kotlin.services.rum.model.CwLog? = builder.cwLog

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

    override fun toString(): kotlin.String = buildString {
        append("DataStorage(")
        append("cwLog=$cwLog")
        append(")")
    }

    override fun hashCode(): kotlin.Int {
        var result = cwLog?.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 DataStorage

        if (cwLog != other.cwLog) return false

        return true
    }

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

    public class Builder {
        /**
         * A structure that contains the information about whether the app monitor stores copies of the data that RUM collects in CloudWatch Logs. If it does, this structure also contains the name of the log group.
         */
        public var cwLog: aws.sdk.kotlin.services.rum.model.CwLog? = null

        @PublishedApi
        internal constructor()
        @PublishedApi
        internal constructor(x: aws.sdk.kotlin.services.rum.model.DataStorage) : this() {
            this.cwLog = x.cwLog
        }

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

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

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




© 2015 - 2025 Weber Informatics LLC | Privacy Policy