
commonMain.aws.sdk.kotlin.services.kafka.model.CreateClusterRequest.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
public class CreateClusterRequest private constructor(builder: Builder) {
/**
* Information about the broker nodes in the cluster.
*/
public val brokerNodeGroupInfo: aws.sdk.kotlin.services.kafka.model.BrokerNodeGroupInfo? = builder.brokerNodeGroupInfo
/**
* Includes all client authentication related information.
*/
public val clientAuthentication: aws.sdk.kotlin.services.kafka.model.ClientAuthentication? = builder.clientAuthentication
/**
* The name of the cluster.
*/
public val clusterName: kotlin.String? = builder.clusterName
/**
* Represents the configuration that you want MSK to use for the brokers in a cluster.
*/
public val configurationInfo: aws.sdk.kotlin.services.kafka.model.ConfigurationInfo? = builder.configurationInfo
/**
* Includes all encryption-related information.
*/
public val encryptionInfo: aws.sdk.kotlin.services.kafka.model.EncryptionInfo? = builder.encryptionInfo
/**
* Specifies the level of monitoring for the MSK cluster. The possible values are DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION.
*/
public val enhancedMonitoring: aws.sdk.kotlin.services.kafka.model.EnhancedMonitoring? = builder.enhancedMonitoring
/**
* The version of Apache Kafka.
*/
public val kafkaVersion: kotlin.String? = builder.kafkaVersion
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.OpenMonitoringInfo? = builder.openMonitoring
/**
* This controls storage mode for supported storage tiers.
*/
public val storageMode: aws.sdk.kotlin.services.kafka.model.StorageMode? = builder.storageMode
/**
* Create tags when creating the cluster.
*/
public val tags: Map? = builder.tags
public companion object {
public operator fun invoke(block: Builder.() -> kotlin.Unit): aws.sdk.kotlin.services.kafka.model.CreateClusterRequest = Builder().apply(block).build()
}
override fun toString(): kotlin.String = buildString {
append("CreateClusterRequest(")
append("brokerNodeGroupInfo=$brokerNodeGroupInfo,")
append("clientAuthentication=$clientAuthentication,")
append("clusterName=$clusterName,")
append("configurationInfo=$configurationInfo,")
append("encryptionInfo=$encryptionInfo,")
append("enhancedMonitoring=$enhancedMonitoring,")
append("kafkaVersion=$kafkaVersion,")
append("loggingInfo=$loggingInfo,")
append("numberOfBrokerNodes=$numberOfBrokerNodes,")
append("openMonitoring=$openMonitoring,")
append("storageMode=$storageMode,")
append("tags=$tags")
append(")")
}
override fun hashCode(): kotlin.Int {
var result = brokerNodeGroupInfo?.hashCode() ?: 0
result = 31 * result + (clientAuthentication?.hashCode() ?: 0)
result = 31 * result + (clusterName?.hashCode() ?: 0)
result = 31 * result + (configurationInfo?.hashCode() ?: 0)
result = 31 * result + (encryptionInfo?.hashCode() ?: 0)
result = 31 * result + (enhancedMonitoring?.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)
result = 31 * result + (tags?.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 CreateClusterRequest
if (brokerNodeGroupInfo != other.brokerNodeGroupInfo) return false
if (clientAuthentication != other.clientAuthentication) return false
if (clusterName != other.clusterName) return false
if (configurationInfo != other.configurationInfo) return false
if (encryptionInfo != other.encryptionInfo) return false
if (enhancedMonitoring != other.enhancedMonitoring) 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
if (tags != other.tags) return false
return true
}
public inline fun copy(block: Builder.() -> kotlin.Unit = {}): aws.sdk.kotlin.services.kafka.model.CreateClusterRequest = Builder(this).apply(block).build()
@SdkDsl
public class Builder {
/**
* Information about the broker nodes in the cluster.
*/
public var brokerNodeGroupInfo: aws.sdk.kotlin.services.kafka.model.BrokerNodeGroupInfo? = null
/**
* Includes all client authentication related information.
*/
public var clientAuthentication: aws.sdk.kotlin.services.kafka.model.ClientAuthentication? = null
/**
* The name of the cluster.
*/
public var clusterName: kotlin.String? = null
/**
* Represents the configuration that you want MSK to use for the brokers in a cluster.
*/
public var configurationInfo: aws.sdk.kotlin.services.kafka.model.ConfigurationInfo? = null
/**
* Includes all encryption-related information.
*/
public var encryptionInfo: aws.sdk.kotlin.services.kafka.model.EncryptionInfo? = null
/**
* Specifies the level of monitoring for the MSK cluster. The possible values are DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION.
*/
public var enhancedMonitoring: aws.sdk.kotlin.services.kafka.model.EnhancedMonitoring? = null
/**
* The version of Apache Kafka.
*/
public var kafkaVersion: kotlin.String? = null
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.OpenMonitoringInfo? = null
/**
* This controls storage mode for supported storage tiers.
*/
public var storageMode: aws.sdk.kotlin.services.kafka.model.StorageMode? = null
/**
* Create tags when creating the cluster.
*/
public var tags: Map? = null
@PublishedApi
internal constructor()
@PublishedApi
internal constructor(x: aws.sdk.kotlin.services.kafka.model.CreateClusterRequest) : this() {
this.brokerNodeGroupInfo = x.brokerNodeGroupInfo
this.clientAuthentication = x.clientAuthentication
this.clusterName = x.clusterName
this.configurationInfo = x.configurationInfo
this.encryptionInfo = x.encryptionInfo
this.enhancedMonitoring = x.enhancedMonitoring
this.kafkaVersion = x.kafkaVersion
this.loggingInfo = x.loggingInfo
this.numberOfBrokerNodes = x.numberOfBrokerNodes
this.openMonitoring = x.openMonitoring
this.storageMode = x.storageMode
this.tags = x.tags
}
@PublishedApi
internal fun build(): aws.sdk.kotlin.services.kafka.model.CreateClusterRequest = CreateClusterRequest(this)
/**
* construct an [aws.sdk.kotlin.services.kafka.model.BrokerNodeGroupInfo] inside the given [block]
*/
public fun brokerNodeGroupInfo(block: aws.sdk.kotlin.services.kafka.model.BrokerNodeGroupInfo.Builder.() -> kotlin.Unit) {
this.brokerNodeGroupInfo = aws.sdk.kotlin.services.kafka.model.BrokerNodeGroupInfo.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.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.OpenMonitoringInfo] inside the given [block]
*/
public fun openMonitoring(block: aws.sdk.kotlin.services.kafka.model.OpenMonitoringInfo.Builder.() -> kotlin.Unit) {
this.openMonitoring = aws.sdk.kotlin.services.kafka.model.OpenMonitoringInfo.invoke(block)
}
internal fun correctErrors(): Builder {
return this
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy