
com.pulumi.azurenative.iotoperations.kotlin.inputs.CertManagerCertOptionsArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.iotoperations.kotlin.inputs
import com.pulumi.azurenative.iotoperations.inputs.CertManagerCertOptionsArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Cert Manager Cert properties
* @property duration Lifetime of certificate. Must be specified using a Go time.Duration format (h|m|s). E.g. 240h for 240 hours and 45m for 45 minutes.
* @property privateKey Configuration of certificate private key.
* @property renewBefore When to begin renewing certificate. Must be specified using a Go time.Duration format (h|m|s). E.g. 240h for 240 hours and 45m for 45 minutes.
*/
public data class CertManagerCertOptionsArgs(
public val duration: Output,
public val privateKey: Output,
public val renewBefore: Output,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.iotoperations.inputs.CertManagerCertOptionsArgs =
com.pulumi.azurenative.iotoperations.inputs.CertManagerCertOptionsArgs.builder()
.duration(duration.applyValue({ args0 -> args0 }))
.privateKey(privateKey.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.renewBefore(renewBefore.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [CertManagerCertOptionsArgs].
*/
@PulumiTagMarker
public class CertManagerCertOptionsArgsBuilder internal constructor() {
private var duration: Output? = null
private var privateKey: Output? = null
private var renewBefore: Output? = null
/**
* @param value Lifetime of certificate. Must be specified using a Go time.Duration format (h|m|s). E.g. 240h for 240 hours and 45m for 45 minutes.
*/
@JvmName("tkujkqdfofcissuu")
public suspend fun duration(`value`: Output) {
this.duration = value
}
/**
* @param value Configuration of certificate private key.
*/
@JvmName("lobcvarbfadqfqyb")
public suspend fun privateKey(`value`: Output) {
this.privateKey = value
}
/**
* @param value When to begin renewing certificate. Must be specified using a Go time.Duration format (h|m|s). E.g. 240h for 240 hours and 45m for 45 minutes.
*/
@JvmName("agavxsmujyhkpwyk")
public suspend fun renewBefore(`value`: Output) {
this.renewBefore = value
}
/**
* @param value Lifetime of certificate. Must be specified using a Go time.Duration format (h|m|s). E.g. 240h for 240 hours and 45m for 45 minutes.
*/
@JvmName("ckudkexjlqeklrfk")
public suspend fun duration(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.duration = mapped
}
/**
* @param value Configuration of certificate private key.
*/
@JvmName("oaubefcmotrqbton")
public suspend fun privateKey(`value`: CertManagerPrivateKeyArgs) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.privateKey = mapped
}
/**
* @param argument Configuration of certificate private key.
*/
@JvmName("rwvccdobyncvxlof")
public suspend fun privateKey(argument: suspend CertManagerPrivateKeyArgsBuilder.() -> Unit) {
val toBeMapped = CertManagerPrivateKeyArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.privateKey = mapped
}
/**
* @param value When to begin renewing certificate. Must be specified using a Go time.Duration format (h|m|s). E.g. 240h for 240 hours and 45m for 45 minutes.
*/
@JvmName("xnvwknfqftnclgct")
public suspend fun renewBefore(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.renewBefore = mapped
}
internal fun build(): CertManagerCertOptionsArgs = CertManagerCertOptionsArgs(
duration = duration ?: throw PulumiNullFieldException("duration"),
privateKey = privateKey ?: throw PulumiNullFieldException("privateKey"),
renewBefore = renewBefore ?: throw PulumiNullFieldException("renewBefore"),
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy