com.pulumi.digitalocean.kotlin.inputs.DatabaseKafkaTopicConfigArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-digitalocean-kotlin Show documentation
Show all versions of pulumi-digitalocean-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.digitalocean.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.digitalocean.inputs.DatabaseKafkaTopicConfigArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.Double
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property cleanupPolicy The topic cleanup policy that describes whether messages should be deleted, compacted, or both when retention policies are violated.
* This may be one of "delete", "compact", or "compact_delete".
* @property compressionType The topic compression codecs used for a given topic.
* This may be one of "uncompressed", "gzip", "snappy", "lz4", "producer", "zstd". "uncompressed" indicates that there is no compression and "producer" retains the original compression codec set by the producer.
* @property deleteRetentionMs The amount of time, in ms, that deleted records are retained.
* @property fileDeleteDelayMs The amount of time, in ms, to wait before deleting a topic log segment from the filesystem.
* @property flushMessages The number of messages accumulated on a topic partition before they are flushed to disk.
* @property flushMs The maximum time, in ms, that a topic is kept in memory before being flushed to disk.
* @property indexIntervalBytes The interval, in bytes, in which entries are added to the offset index.
* @property maxCompactionLagMs The maximum time, in ms, that a particular message will remain uncompacted. This will not apply if the `compression_type` is set to "uncompressed" or it is set to `producer` and the producer is not using compression.
* @property maxMessageBytes The maximum size, in bytes, of a message.
* @property messageDownConversionEnable Determines whether down-conversion of message formats for consumers is enabled.
* @property messageFormatVersion The version of the inter-broker protocol that will be used. This may be one of "0.8.0", "0.8.1", "0.8.2", "0.9.0", "0.10.0", "0.10.0-IV0", "0.10.0-IV1", "0.10.1", "0.10.1-IV0", "0.10.1-IV1", "0.10.1-IV2", "0.10.2", "0.10.2-IV0", "0.11.0", "0.11.0-IV0", "0.11.0-IV1", "0.11.0-IV2", "1.0", "1.0-IV0", "1.1", "1.1-IV0", "2.0", "2.0-IV0", "2.0-IV1", "2.1", "2.1-IV0", "2.1-IV1", "2.1-IV2", "2.2", "2.2-IV0", "2.2-IV1", "2.3", "2.3-IV0", "2.3-IV1", "2.4", "2.4-IV0", "2.4-IV1", "2.5", "2.5-IV0", "2.6", "2.6-IV0", "2.7", "2.7-IV0", "2.7-IV1", "2.7-IV2", "2.8", "2.8-IV0", "2.8-IV1", "3.0", "3.0-IV0", "3.0-IV1", "3.1", "3.1-IV0", "3.2", "3.2-IV0", "3.3", "3.3-IV0", "3.3-IV1", "3.3-IV2", "3.3-IV3", "3.4", "3.4-IV0", "3.5", "3.5-IV0", "3.5-IV1", "3.5-IV2", "3.6", "3.6-IV0", "3.6-IV1", "3.6-IV2".
* @property messageTimestampDifferenceMaxMs The maximum difference, in ms, between the timestamp specific in a message and when the broker receives the message.
* @property messageTimestampType Specifies which timestamp to use for the message. This may be one of "create_time" or "log_append_time".
* @property minCleanableDirtyRatio A scale between 0.0 and 1.0 which controls the frequency of the compactor. Larger values mean more frequent compactions. This is often paired with `max_compaction_lag_ms` to control the compactor frequency.
* @property minCompactionLagMs
* @property minInsyncReplicas The number of replicas that must acknowledge a write before it is considered successful. -1 is a special setting to indicate that all nodes must ack a message before a write is considered successful. Default is 1, indicating at least 1 replica must acknowledge a write to be considered successful.
* @property preallocate Determines whether to preallocate a file on disk when creating a new log segment within a topic.
* @property retentionBytes The maximum size, in bytes, of a topic before messages are deleted. -1 is a special setting indicating that this setting has no limit.
* @property retentionMs The maximum time, in ms, that a topic log file is retained before deleting it. -1 is a special setting indicating that this setting has no limit.
* @property segmentBytes The maximum size, in bytes, of a single topic log file.
* @property segmentIndexBytes The maximum size, in bytes, of the offset index.
* @property segmentJitterMs The maximum time, in ms, subtracted from the scheduled segment disk flush time to avoid the thundering herd problem for segment flushing.
* @property segmentMs The maximum time, in ms, before the topic log will flush to disk.
*/
public data class DatabaseKafkaTopicConfigArgs(
public val cleanupPolicy: Output? = null,
public val compressionType: Output? = null,
public val deleteRetentionMs: Output? = null,
public val fileDeleteDelayMs: Output? = null,
public val flushMessages: Output? = null,
public val flushMs: Output? = null,
public val indexIntervalBytes: Output? = null,
public val maxCompactionLagMs: Output? = null,
public val maxMessageBytes: Output? = null,
public val messageDownConversionEnable: Output? = null,
public val messageFormatVersion: Output? = null,
public val messageTimestampDifferenceMaxMs: Output? = null,
public val messageTimestampType: Output? = null,
public val minCleanableDirtyRatio: Output? = null,
public val minCompactionLagMs: Output? = null,
public val minInsyncReplicas: Output? = null,
public val preallocate: Output? = null,
public val retentionBytes: Output? = null,
public val retentionMs: Output? = null,
public val segmentBytes: Output? = null,
public val segmentIndexBytes: Output? = null,
public val segmentJitterMs: Output? = null,
public val segmentMs: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.digitalocean.inputs.DatabaseKafkaTopicConfigArgs =
com.pulumi.digitalocean.inputs.DatabaseKafkaTopicConfigArgs.builder()
.cleanupPolicy(cleanupPolicy?.applyValue({ args0 -> args0 }))
.compressionType(compressionType?.applyValue({ args0 -> args0 }))
.deleteRetentionMs(deleteRetentionMs?.applyValue({ args0 -> args0 }))
.fileDeleteDelayMs(fileDeleteDelayMs?.applyValue({ args0 -> args0 }))
.flushMessages(flushMessages?.applyValue({ args0 -> args0 }))
.flushMs(flushMs?.applyValue({ args0 -> args0 }))
.indexIntervalBytes(indexIntervalBytes?.applyValue({ args0 -> args0 }))
.maxCompactionLagMs(maxCompactionLagMs?.applyValue({ args0 -> args0 }))
.maxMessageBytes(maxMessageBytes?.applyValue({ args0 -> args0 }))
.messageDownConversionEnable(messageDownConversionEnable?.applyValue({ args0 -> args0 }))
.messageFormatVersion(messageFormatVersion?.applyValue({ args0 -> args0 }))
.messageTimestampDifferenceMaxMs(messageTimestampDifferenceMaxMs?.applyValue({ args0 -> args0 }))
.messageTimestampType(messageTimestampType?.applyValue({ args0 -> args0 }))
.minCleanableDirtyRatio(minCleanableDirtyRatio?.applyValue({ args0 -> args0 }))
.minCompactionLagMs(minCompactionLagMs?.applyValue({ args0 -> args0 }))
.minInsyncReplicas(minInsyncReplicas?.applyValue({ args0 -> args0 }))
.preallocate(preallocate?.applyValue({ args0 -> args0 }))
.retentionBytes(retentionBytes?.applyValue({ args0 -> args0 }))
.retentionMs(retentionMs?.applyValue({ args0 -> args0 }))
.segmentBytes(segmentBytes?.applyValue({ args0 -> args0 }))
.segmentIndexBytes(segmentIndexBytes?.applyValue({ args0 -> args0 }))
.segmentJitterMs(segmentJitterMs?.applyValue({ args0 -> args0 }))
.segmentMs(segmentMs?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [DatabaseKafkaTopicConfigArgs].
*/
@PulumiTagMarker
public class DatabaseKafkaTopicConfigArgsBuilder internal constructor() {
private var cleanupPolicy: Output? = null
private var compressionType: Output? = null
private var deleteRetentionMs: Output? = null
private var fileDeleteDelayMs: Output? = null
private var flushMessages: Output? = null
private var flushMs: Output? = null
private var indexIntervalBytes: Output? = null
private var maxCompactionLagMs: Output? = null
private var maxMessageBytes: Output? = null
private var messageDownConversionEnable: Output? = null
private var messageFormatVersion: Output? = null
private var messageTimestampDifferenceMaxMs: Output? = null
private var messageTimestampType: Output? = null
private var minCleanableDirtyRatio: Output? = null
private var minCompactionLagMs: Output? = null
private var minInsyncReplicas: Output? = null
private var preallocate: Output? = null
private var retentionBytes: Output? = null
private var retentionMs: Output? = null
private var segmentBytes: Output? = null
private var segmentIndexBytes: Output? = null
private var segmentJitterMs: Output? = null
private var segmentMs: Output? = null
/**
* @param value The topic cleanup policy that describes whether messages should be deleted, compacted, or both when retention policies are violated.
* This may be one of "delete", "compact", or "compact_delete".
*/
@JvmName("hugfvrmtnkxbeogn")
public suspend fun cleanupPolicy(`value`: Output) {
this.cleanupPolicy = value
}
/**
* @param value The topic compression codecs used for a given topic.
* This may be one of "uncompressed", "gzip", "snappy", "lz4", "producer", "zstd". "uncompressed" indicates that there is no compression and "producer" retains the original compression codec set by the producer.
*/
@JvmName("pmwsyiryjusydaht")
public suspend fun compressionType(`value`: Output) {
this.compressionType = value
}
/**
* @param value The amount of time, in ms, that deleted records are retained.
*/
@JvmName("gygnofbnnnptutrt")
public suspend fun deleteRetentionMs(`value`: Output) {
this.deleteRetentionMs = value
}
/**
* @param value The amount of time, in ms, to wait before deleting a topic log segment from the filesystem.
*/
@JvmName("rbnbdpityyljqqus")
public suspend fun fileDeleteDelayMs(`value`: Output) {
this.fileDeleteDelayMs = value
}
/**
* @param value The number of messages accumulated on a topic partition before they are flushed to disk.
*/
@JvmName("ocyfqdxbomqdapdv")
public suspend fun flushMessages(`value`: Output) {
this.flushMessages = value
}
/**
* @param value The maximum time, in ms, that a topic is kept in memory before being flushed to disk.
*/
@JvmName("kildqgnixftituue")
public suspend fun flushMs(`value`: Output) {
this.flushMs = value
}
/**
* @param value The interval, in bytes, in which entries are added to the offset index.
*/
@JvmName("orvkcirihifvwale")
public suspend fun indexIntervalBytes(`value`: Output) {
this.indexIntervalBytes = value
}
/**
* @param value The maximum time, in ms, that a particular message will remain uncompacted. This will not apply if the `compression_type` is set to "uncompressed" or it is set to `producer` and the producer is not using compression.
*/
@JvmName("ugvxbecyduwafkom")
public suspend fun maxCompactionLagMs(`value`: Output) {
this.maxCompactionLagMs = value
}
/**
* @param value The maximum size, in bytes, of a message.
*/
@JvmName("gipbwwnxdyntpqht")
public suspend fun maxMessageBytes(`value`: Output) {
this.maxMessageBytes = value
}
/**
* @param value Determines whether down-conversion of message formats for consumers is enabled.
*/
@JvmName("psxulwempqbjtxqe")
public suspend fun messageDownConversionEnable(`value`: Output) {
this.messageDownConversionEnable = value
}
/**
* @param value The version of the inter-broker protocol that will be used. This may be one of "0.8.0", "0.8.1", "0.8.2", "0.9.0", "0.10.0", "0.10.0-IV0", "0.10.0-IV1", "0.10.1", "0.10.1-IV0", "0.10.1-IV1", "0.10.1-IV2", "0.10.2", "0.10.2-IV0", "0.11.0", "0.11.0-IV0", "0.11.0-IV1", "0.11.0-IV2", "1.0", "1.0-IV0", "1.1", "1.1-IV0", "2.0", "2.0-IV0", "2.0-IV1", "2.1", "2.1-IV0", "2.1-IV1", "2.1-IV2", "2.2", "2.2-IV0", "2.2-IV1", "2.3", "2.3-IV0", "2.3-IV1", "2.4", "2.4-IV0", "2.4-IV1", "2.5", "2.5-IV0", "2.6", "2.6-IV0", "2.7", "2.7-IV0", "2.7-IV1", "2.7-IV2", "2.8", "2.8-IV0", "2.8-IV1", "3.0", "3.0-IV0", "3.0-IV1", "3.1", "3.1-IV0", "3.2", "3.2-IV0", "3.3", "3.3-IV0", "3.3-IV1", "3.3-IV2", "3.3-IV3", "3.4", "3.4-IV0", "3.5", "3.5-IV0", "3.5-IV1", "3.5-IV2", "3.6", "3.6-IV0", "3.6-IV1", "3.6-IV2".
*/
@JvmName("remlmcwbkutcrhob")
public suspend fun messageFormatVersion(`value`: Output) {
this.messageFormatVersion = value
}
/**
* @param value The maximum difference, in ms, between the timestamp specific in a message and when the broker receives the message.
*/
@JvmName("hkqnicspdikgwaww")
public suspend fun messageTimestampDifferenceMaxMs(`value`: Output) {
this.messageTimestampDifferenceMaxMs = value
}
/**
* @param value Specifies which timestamp to use for the message. This may be one of "create_time" or "log_append_time".
*/
@JvmName("ljqntvurtbpweqvb")
public suspend fun messageTimestampType(`value`: Output) {
this.messageTimestampType = value
}
/**
* @param value A scale between 0.0 and 1.0 which controls the frequency of the compactor. Larger values mean more frequent compactions. This is often paired with `max_compaction_lag_ms` to control the compactor frequency.
*/
@JvmName("crgbvifhkmfwqpuu")
public suspend fun minCleanableDirtyRatio(`value`: Output) {
this.minCleanableDirtyRatio = value
}
/**
* @param value
*/
@JvmName("milkqeqmdmfmgjfb")
public suspend fun minCompactionLagMs(`value`: Output) {
this.minCompactionLagMs = value
}
/**
* @param value The number of replicas that must acknowledge a write before it is considered successful. -1 is a special setting to indicate that all nodes must ack a message before a write is considered successful. Default is 1, indicating at least 1 replica must acknowledge a write to be considered successful.
*/
@JvmName("pjryodpdyhcqqwkd")
public suspend fun minInsyncReplicas(`value`: Output) {
this.minInsyncReplicas = value
}
/**
* @param value Determines whether to preallocate a file on disk when creating a new log segment within a topic.
*/
@JvmName("vydjnwckdtbddcnw")
public suspend fun preallocate(`value`: Output) {
this.preallocate = value
}
/**
* @param value The maximum size, in bytes, of a topic before messages are deleted. -1 is a special setting indicating that this setting has no limit.
*/
@JvmName("rckterxhjwsuujck")
public suspend fun retentionBytes(`value`: Output) {
this.retentionBytes = value
}
/**
* @param value The maximum time, in ms, that a topic log file is retained before deleting it. -1 is a special setting indicating that this setting has no limit.
*/
@JvmName("xiucbncajciwbydf")
public suspend fun retentionMs(`value`: Output) {
this.retentionMs = value
}
/**
* @param value The maximum size, in bytes, of a single topic log file.
*/
@JvmName("dnfvjmfrpgtgkahy")
public suspend fun segmentBytes(`value`: Output) {
this.segmentBytes = value
}
/**
* @param value The maximum size, in bytes, of the offset index.
*/
@JvmName("kvaermotyqkllghd")
public suspend fun segmentIndexBytes(`value`: Output) {
this.segmentIndexBytes = value
}
/**
* @param value The maximum time, in ms, subtracted from the scheduled segment disk flush time to avoid the thundering herd problem for segment flushing.
*/
@JvmName("oavcedgivnkuhdhq")
public suspend fun segmentJitterMs(`value`: Output) {
this.segmentJitterMs = value
}
/**
* @param value The maximum time, in ms, before the topic log will flush to disk.
*/
@JvmName("ubcahassaywomdxu")
public suspend fun segmentMs(`value`: Output) {
this.segmentMs = value
}
/**
* @param value The topic cleanup policy that describes whether messages should be deleted, compacted, or both when retention policies are violated.
* This may be one of "delete", "compact", or "compact_delete".
*/
@JvmName("hrunnkxsgfnfsxir")
public suspend fun cleanupPolicy(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.cleanupPolicy = mapped
}
/**
* @param value The topic compression codecs used for a given topic.
* This may be one of "uncompressed", "gzip", "snappy", "lz4", "producer", "zstd". "uncompressed" indicates that there is no compression and "producer" retains the original compression codec set by the producer.
*/
@JvmName("gpxuwwxtiyugqkwv")
public suspend fun compressionType(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.compressionType = mapped
}
/**
* @param value The amount of time, in ms, that deleted records are retained.
*/
@JvmName("fcpkamdxjbxsicxt")
public suspend fun deleteRetentionMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.deleteRetentionMs = mapped
}
/**
* @param value The amount of time, in ms, to wait before deleting a topic log segment from the filesystem.
*/
@JvmName("ymifwhvndwedsipl")
public suspend fun fileDeleteDelayMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.fileDeleteDelayMs = mapped
}
/**
* @param value The number of messages accumulated on a topic partition before they are flushed to disk.
*/
@JvmName("tpkqtvaaubbypxoo")
public suspend fun flushMessages(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.flushMessages = mapped
}
/**
* @param value The maximum time, in ms, that a topic is kept in memory before being flushed to disk.
*/
@JvmName("uatwtgxmbpsrgwpv")
public suspend fun flushMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.flushMs = mapped
}
/**
* @param value The interval, in bytes, in which entries are added to the offset index.
*/
@JvmName("idllwpkqteikeups")
public suspend fun indexIntervalBytes(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.indexIntervalBytes = mapped
}
/**
* @param value The maximum time, in ms, that a particular message will remain uncompacted. This will not apply if the `compression_type` is set to "uncompressed" or it is set to `producer` and the producer is not using compression.
*/
@JvmName("qthdyhogjaxyqcpu")
public suspend fun maxCompactionLagMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.maxCompactionLagMs = mapped
}
/**
* @param value The maximum size, in bytes, of a message.
*/
@JvmName("dlyfbeurgfomduka")
public suspend fun maxMessageBytes(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.maxMessageBytes = mapped
}
/**
* @param value Determines whether down-conversion of message formats for consumers is enabled.
*/
@JvmName("dwxxagltvpcluubl")
public suspend fun messageDownConversionEnable(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.messageDownConversionEnable = mapped
}
/**
* @param value The version of the inter-broker protocol that will be used. This may be one of "0.8.0", "0.8.1", "0.8.2", "0.9.0", "0.10.0", "0.10.0-IV0", "0.10.0-IV1", "0.10.1", "0.10.1-IV0", "0.10.1-IV1", "0.10.1-IV2", "0.10.2", "0.10.2-IV0", "0.11.0", "0.11.0-IV0", "0.11.0-IV1", "0.11.0-IV2", "1.0", "1.0-IV0", "1.1", "1.1-IV0", "2.0", "2.0-IV0", "2.0-IV1", "2.1", "2.1-IV0", "2.1-IV1", "2.1-IV2", "2.2", "2.2-IV0", "2.2-IV1", "2.3", "2.3-IV0", "2.3-IV1", "2.4", "2.4-IV0", "2.4-IV1", "2.5", "2.5-IV0", "2.6", "2.6-IV0", "2.7", "2.7-IV0", "2.7-IV1", "2.7-IV2", "2.8", "2.8-IV0", "2.8-IV1", "3.0", "3.0-IV0", "3.0-IV1", "3.1", "3.1-IV0", "3.2", "3.2-IV0", "3.3", "3.3-IV0", "3.3-IV1", "3.3-IV2", "3.3-IV3", "3.4", "3.4-IV0", "3.5", "3.5-IV0", "3.5-IV1", "3.5-IV2", "3.6", "3.6-IV0", "3.6-IV1", "3.6-IV2".
*/
@JvmName("xrygwdoqimgglobe")
public suspend fun messageFormatVersion(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.messageFormatVersion = mapped
}
/**
* @param value The maximum difference, in ms, between the timestamp specific in a message and when the broker receives the message.
*/
@JvmName("bctkakubsqdtmedw")
public suspend fun messageTimestampDifferenceMaxMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.messageTimestampDifferenceMaxMs = mapped
}
/**
* @param value Specifies which timestamp to use for the message. This may be one of "create_time" or "log_append_time".
*/
@JvmName("vqvqrxmesnkdqijl")
public suspend fun messageTimestampType(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.messageTimestampType = mapped
}
/**
* @param value A scale between 0.0 and 1.0 which controls the frequency of the compactor. Larger values mean more frequent compactions. This is often paired with `max_compaction_lag_ms` to control the compactor frequency.
*/
@JvmName("boiwrhflucnavprp")
public suspend fun minCleanableDirtyRatio(`value`: Double?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.minCleanableDirtyRatio = mapped
}
/**
* @param value
*/
@JvmName("nbyvvfuhumipxcyi")
public suspend fun minCompactionLagMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.minCompactionLagMs = mapped
}
/**
* @param value The number of replicas that must acknowledge a write before it is considered successful. -1 is a special setting to indicate that all nodes must ack a message before a write is considered successful. Default is 1, indicating at least 1 replica must acknowledge a write to be considered successful.
*/
@JvmName("vtrfxqtjnjdfrjgc")
public suspend fun minInsyncReplicas(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.minInsyncReplicas = mapped
}
/**
* @param value Determines whether to preallocate a file on disk when creating a new log segment within a topic.
*/
@JvmName("lnflsjucnbxyxykq")
public suspend fun preallocate(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.preallocate = mapped
}
/**
* @param value The maximum size, in bytes, of a topic before messages are deleted. -1 is a special setting indicating that this setting has no limit.
*/
@JvmName("rnygjkscntddyppi")
public suspend fun retentionBytes(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.retentionBytes = mapped
}
/**
* @param value The maximum time, in ms, that a topic log file is retained before deleting it. -1 is a special setting indicating that this setting has no limit.
*/
@JvmName("byfsrywvtwidkejr")
public suspend fun retentionMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.retentionMs = mapped
}
/**
* @param value The maximum size, in bytes, of a single topic log file.
*/
@JvmName("nedktqvvhnswaxfj")
public suspend fun segmentBytes(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.segmentBytes = mapped
}
/**
* @param value The maximum size, in bytes, of the offset index.
*/
@JvmName("ylfxuakositcvovw")
public suspend fun segmentIndexBytes(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.segmentIndexBytes = mapped
}
/**
* @param value The maximum time, in ms, subtracted from the scheduled segment disk flush time to avoid the thundering herd problem for segment flushing.
*/
@JvmName("qigwnarmykmlqjwd")
public suspend fun segmentJitterMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.segmentJitterMs = mapped
}
/**
* @param value The maximum time, in ms, before the topic log will flush to disk.
*/
@JvmName("ehopodgvtgomxeui")
public suspend fun segmentMs(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.segmentMs = mapped
}
internal fun build(): DatabaseKafkaTopicConfigArgs = DatabaseKafkaTopicConfigArgs(
cleanupPolicy = cleanupPolicy,
compressionType = compressionType,
deleteRetentionMs = deleteRetentionMs,
fileDeleteDelayMs = fileDeleteDelayMs,
flushMessages = flushMessages,
flushMs = flushMs,
indexIntervalBytes = indexIntervalBytes,
maxCompactionLagMs = maxCompactionLagMs,
maxMessageBytes = maxMessageBytes,
messageDownConversionEnable = messageDownConversionEnable,
messageFormatVersion = messageFormatVersion,
messageTimestampDifferenceMaxMs = messageTimestampDifferenceMaxMs,
messageTimestampType = messageTimestampType,
minCleanableDirtyRatio = minCleanableDirtyRatio,
minCompactionLagMs = minCompactionLagMs,
minInsyncReplicas = minInsyncReplicas,
preallocate = preallocate,
retentionBytes = retentionBytes,
retentionMs = retentionMs,
segmentBytes = segmentBytes,
segmentIndexBytes = segmentIndexBytes,
segmentJitterMs = segmentJitterMs,
segmentMs = segmentMs,
)
}