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

com.pulumi.awsnative.kinesisanalyticsv2.kotlin.outputs.ApplicationCheckpointConfiguration.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 0.122.0.0
Show newest version
@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),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy