
commonMain.aws.sdk.kotlin.services.kafka.model.MutableClusterInfo.kt Maven / Gradle / Ivy
// Code generated by smithy-kotlin-codegen. DO NOT EDIT!
package aws.sdk.kotlin.services.kafka.model
import aws.smithy.kotlin.runtime.SdkDsl
/**
* Information about cluster attributes that can be updated via update APIs.
*/
public class MutableClusterInfo private constructor(builder: Builder) {
/**
* Describes brokers being changed during a broker count update.
*/
public val brokerCountUpdateInfo: aws.sdk.kotlin.services.kafka.model.BrokerCountUpdateInfo? = builder.brokerCountUpdateInfo
/**
* Specifies the size of the EBS volume and the ID of the associated broker.
*/
public val brokerEbsVolumeInfo: List? = builder.brokerEbsVolumeInfo
/**
* Includes all client authentication information.
*/
public val clientAuthentication: aws.sdk.kotlin.services.kafka.model.ClientAuthentication? = builder.clientAuthentication
/**
* Information about the changes in the configuration of the brokers.
*/
public val configurationInfo: aws.sdk.kotlin.services.kafka.model.ConfigurationInfo? = builder.configurationInfo
/**
* Information about the broker access configuration.
*/
public val connectivityInfo: aws.sdk.kotlin.services.kafka.model.ConnectivityInfo? = builder.connectivityInfo
/**
* Includes all encryption-related information.
*/
public val encryptionInfo: aws.sdk.kotlin.services.kafka.model.EncryptionInfo? = builder.encryptionInfo
/**
* Specifies which Apache Kafka metrics Amazon MSK gathers and sends to Amazon CloudWatch for this cluster.
*/
public val enhancedMonitoring: aws.sdk.kotlin.services.kafka.model.EnhancedMonitoring? = builder.enhancedMonitoring
/**
* Information about the Amazon MSK broker type.
*/
public val instanceType: kotlin.String? = builder.instanceType
/**
* The Apache Kafka version.
*/
public val kafkaVersion: kotlin.String? = builder.kafkaVersion
/**
* You can configure your MSK cluster to send broker logs to different destination types. This is a container for the configuration details related to broker logs.
*/
public val loggingInfo: aws.sdk.kotlin.services.kafka.model.LoggingInfo? = builder.loggingInfo
/**
* The number of broker nodes in the cluster.
*/
public val numberOfBrokerNodes: kotlin.Int? = builder.numberOfBrokerNodes
/**
* The settings for open monitoring.
*/
public val openMonitoring: aws.sdk.kotlin.services.kafka.model.OpenMonitoring? = builder.openMonitoring
/**
* This controls storage mode for supported storage tiers.
*/
public val storageMode: aws.sdk.kotlin.services.kafka.model.StorageMode? = builder.storageMode
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.kafka.model.MutableClusterInfo = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("MutableClusterInfo(")
append("brokerCountUpdateInfo=$brokerCountUpdateInfo,")
append("brokerEbsVolumeInfo=$brokerEbsVolumeInfo,")
append("clientAuthentication=$clientAuthentication,")
append("configurationInfo=$configurationInfo,")
append("connectivityInfo=$connectivityInfo,")
append("encryptionInfo=$encryptionInfo,")
append("enhancedMonitoring=$enhancedMonitoring,")
append("instanceType=$instanceType,")
append("kafkaVersion=$kafkaVersion,")
append("loggingInfo=$loggingInfo,")
append("numberOfBrokerNodes=$numberOfBrokerNodes,")
append("openMonitoring=$openMonitoring,")
append("storageMode=$storageMode")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = brokerCountUpdateInfo?.hashCode() ?: 0
result = 31 * result + (brokerEbsVolumeInfo?.hashCode() ?: 0)
result = 31 * result + (clientAuthentication?.hashCode() ?: 0)
result = 31 * result + (configurationInfo?.hashCode() ?: 0)
result = 31 * result + (connectivityInfo?.hashCode() ?: 0)
result = 31 * result + (encryptionInfo?.hashCode() ?: 0)
result = 31 * result + (enhancedMonitoring?.hashCode() ?: 0)
result = 31 * result + (instanceType?.hashCode() ?: 0)
result = 31 * result + (kafkaVersion?.hashCode() ?: 0)
result = 31 * result + (loggingInfo?.hashCode() ?: 0)
result = 31 * result + (numberOfBrokerNodes ?: 0)
result = 31 * result + (openMonitoring?.hashCode() ?: 0)
result = 31 * result + (storageMode?.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 MutableClusterInfo
if (brokerCountUpdateInfo != other.brokerCountUpdateInfo) return false
if (brokerEbsVolumeInfo != other.brokerEbsVolumeInfo) return false
if (clientAuthentication != other.clientAuthentication) return false
if (configurationInfo != other.configurationInfo) return false
if (connectivityInfo != other.connectivityInfo) return false
if (encryptionInfo != other.encryptionInfo) return false
if (enhancedMonitoring != other.enhancedMonitoring) return false
if (instanceType != other.instanceType) return false
if (kafkaVersion != other.kafkaVersion) return false
if (loggingInfo != other.loggingInfo) return false
if (numberOfBrokerNodes != other.numberOfBrokerNodes) return false
if (openMonitoring != other.openMonitoring) return false
if (storageMode != other.storageMode) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.kafka.model.MutableClusterInfo = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* Describes brokers being changed during a broker count update.
*/
public var brokerCountUpdateInfo: aws.sdk.kotlin.services.kafka.model.BrokerCountUpdateInfo? = null
/**
* Specifies the size of the EBS volume and the ID of the associated broker.
*/
public var brokerEbsVolumeInfo: List? = null
/**
* Includes all client authentication information.
*/
public var clientAuthentication: aws.sdk.kotlin.services.kafka.model.ClientAuthentication? = null
/**
* Information about the changes in the configuration of the brokers.
*/
public var configurationInfo: aws.sdk.kotlin.services.kafka.model.ConfigurationInfo? = null
/**
* Information about the broker access configuration.
*/
public var connectivityInfo: aws.sdk.kotlin.services.kafka.model.ConnectivityInfo? = null
/**
* Includes all encryption-related information.
*/
public var encryptionInfo: aws.sdk.kotlin.services.kafka.model.EncryptionInfo? = null
/**
* Specifies which Apache Kafka metrics Amazon MSK gathers and sends to Amazon CloudWatch for this cluster.
*/
public var enhancedMonitoring: aws.sdk.kotlin.services.kafka.model.EnhancedMonitoring? = null
/**
* Information about the Amazon MSK broker type.
*/
public var instanceType: kotlin.String? = null
/**
* The Apache Kafka version.
*/
public var kafkaVersion: kotlin.String? = null
/**
* You can configure your MSK cluster to send broker logs to different destination types. This is a container for the configuration details related to broker logs.
*/
public var loggingInfo: aws.sdk.kotlin.services.kafka.model.LoggingInfo? = null
/**
* The number of broker nodes in the cluster.
*/
public var numberOfBrokerNodes: kotlin.Int? = null
/**
* The settings for open monitoring.
*/
public var openMonitoring: aws.sdk.kotlin.services.kafka.model.OpenMonitoring? = null
/**
* This controls storage mode for supported storage tiers.
*/
public var storageMode: aws.sdk.kotlin.services.kafka.model.StorageMode? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.kafka.model.MutableClusterInfo) : this() {
this.brokerCountUpdateInfo = x.brokerCountUpdateInfo
this.brokerEbsVolumeInfo = x.brokerEbsVolumeInfo
this.clientAuthentication = x.clientAuthentication
this.configurationInfo = x.configurationInfo
this.connectivityInfo = x.connectivityInfo
this.encryptionInfo = x.encryptionInfo
this.enhancedMonitoring = x.enhancedMonitoring
this.instanceType = x.instanceType
this.kafkaVersion = x.kafkaVersion
this.loggingInfo = x.loggingInfo
this.numberOfBrokerNodes = x.numberOfBrokerNodes
this.openMonitoring = x.openMonitoring
this.storageMode = x.storageMode
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.kafka.model.MutableClusterInfo = MutableClusterInfo(this)
/**
* construct an [aws.sdk.kotlin.services.kafka.model.BrokerCountUpdateInfo] inside the given [block]
*/
public fun brokerCountUpdateInfo(block: aws.sdk.kotlin.services.kafka.model.BrokerCountUpdateInfo.Builder.() -> kotlin.Unit) {
this.brokerCountUpdateInfo = aws.sdk.kotlin.services.kafka.model.BrokerCountUpdateInfo.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.kafka.model.ClientAuthentication] inside the given [block]
*/
public fun clientAuthentication(block: aws.sdk.kotlin.services.kafka.model.ClientAuthentication.Builder.() -> kotlin.Unit) {
this.clientAuthentication = aws.sdk.kotlin.services.kafka.model.ClientAuthentication.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.kafka.model.ConfigurationInfo] inside the given [block]
*/
public fun configurationInfo(block: aws.sdk.kotlin.services.kafka.model.ConfigurationInfo.Builder.() -> kotlin.Unit) {
this.configurationInfo = aws.sdk.kotlin.services.kafka.model.ConfigurationInfo.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.kafka.model.ConnectivityInfo] inside the given [block]
*/
public fun connectivityInfo(block: aws.sdk.kotlin.services.kafka.model.ConnectivityInfo.Builder.() -> kotlin.Unit) {
this.connectivityInfo = aws.sdk.kotlin.services.kafka.model.ConnectivityInfo.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.kafka.model.EncryptionInfo] inside the given [block]
*/
public fun encryptionInfo(block: aws.sdk.kotlin.services.kafka.model.EncryptionInfo.Builder.() -> kotlin.Unit) {
this.encryptionInfo = aws.sdk.kotlin.services.kafka.model.EncryptionInfo.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.kafka.model.LoggingInfo] inside the given [block]
*/
public fun loggingInfo(block: aws.sdk.kotlin.services.kafka.model.LoggingInfo.Builder.() -> kotlin.Unit) {
this.loggingInfo = aws.sdk.kotlin.services.kafka.model.LoggingInfo.invoke(block)
}
/**
* construct an [aws.sdk.kotlin.services.kafka.model.OpenMonitoring] inside the given [block]
*/
public fun openMonitoring(block: aws.sdk.kotlin.services.kafka.model.OpenMonitoring.Builder.() -> kotlin.Unit) {
this.openMonitoring = aws.sdk.kotlin.services.kafka.model.OpenMonitoring.invoke(block)
}
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy