com.pulumi.awsnative.kinesisanalyticsv2.kotlin.outputs.ApplicationCheckpointConfiguration.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-native-kotlin Show documentation
Show all versions of pulumi-aws-native-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.awsnative.kinesisanalyticsv2.kotlin.outputs
import com.pulumi.awsnative.kinesisanalyticsv2.kotlin.enums.ApplicationCheckpointConfigurationConfigurationType
import kotlin.Boolean
import kotlin.Int
import kotlin.Suppress
/**
* Describes an application's checkpointing configuration. Checkpointing is the process of persisting application state for fault tolerance. For more information, see Checkpoints for Fault Tolerance in the Apache Flink Documentation.
* @property checkpointInterval Describes the interval in milliseconds between checkpoint operations.
* @property checkpointingEnabled Describes whether checkpointing is enabled for a Flink-based Kinesis Data Analytics application.
* @property configurationType Describes whether the application uses Kinesis Data Analytics' default checkpointing behavior. You must set this property to `CUSTOM` in order to set the `CheckpointingEnabled`, `CheckpointInterval`, or `MinPauseBetweenCheckpoints` parameters.
* @property minPauseBetweenCheckpoints Describes the minimum time in milliseconds after a checkpoint operation completes that a new checkpoint operation can start. If a checkpoint operation takes longer than the CheckpointInterval, the application otherwise performs continual checkpoint operations. For more information, see Tuning Checkpointing in the Apache Flink Documentation.
*/
public data class ApplicationCheckpointConfiguration(
public val checkpointInterval: Int? = null,
public val checkpointingEnabled: Boolean? = null,
public val configurationType: ApplicationCheckpointConfigurationConfigurationType,
public val minPauseBetweenCheckpoints: Int? = null,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.awsnative.kinesisanalyticsv2.outputs.ApplicationCheckpointConfiguration): ApplicationCheckpointConfiguration = ApplicationCheckpointConfiguration(
checkpointInterval = javaType.checkpointInterval().map({ args0 -> args0 }).orElse(null),
checkpointingEnabled = javaType.checkpointingEnabled().map({ args0 -> args0 }).orElse(null),
configurationType = javaType.configurationType().let({ args0 ->
com.pulumi.awsnative.kinesisanalyticsv2.kotlin.enums.ApplicationCheckpointConfigurationConfigurationType.Companion.toKotlin(args0)
}),
minPauseBetweenCheckpoints = javaType.minPauseBetweenCheckpoints().map({ args0 ->
args0
}).orElse(null),
)
}
}