
com.pulumi.azurenative.cdn.kotlin.inputs.SharedPrivateLinkResourcePropertiesArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.cdn.kotlin.inputs
import com.pulumi.azurenative.cdn.inputs.SharedPrivateLinkResourcePropertiesArgs.builder
import com.pulumi.azurenative.cdn.kotlin.enums.SharedPrivateLinkResourceStatus
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* Describes the properties of an existing Shared Private Link Resource to use when connecting to a private origin.
* @property groupId The group id from the provider of resource the shared private link resource is for.
* @property privateLink The resource id of the resource the shared private link resource is for.
* @property privateLinkLocation The location of the shared private link resource
* @property requestMessage The request message for requesting approval of the shared private link resource.
* @property status Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout.
*/
public data class SharedPrivateLinkResourcePropertiesArgs(
public val groupId: Output? = null,
public val privateLink: Output? = null,
public val privateLinkLocation: Output? = null,
public val requestMessage: Output? = null,
public val status: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.cdn.inputs.SharedPrivateLinkResourcePropertiesArgs =
com.pulumi.azurenative.cdn.inputs.SharedPrivateLinkResourcePropertiesArgs.builder()
.groupId(groupId?.applyValue({ args0 -> args0 }))
.privateLink(privateLink?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.privateLinkLocation(privateLinkLocation?.applyValue({ args0 -> args0 }))
.requestMessage(requestMessage?.applyValue({ args0 -> args0 }))
.status(status?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}
/**
* Builder for [SharedPrivateLinkResourcePropertiesArgs].
*/
@PulumiTagMarker
public class SharedPrivateLinkResourcePropertiesArgsBuilder internal constructor() {
private var groupId: Output? = null
private var privateLink: Output? = null
private var privateLinkLocation: Output? = null
private var requestMessage: Output? = null
private var status: Output? = null
/**
* @param value The group id from the provider of resource the shared private link resource is for.
*/
@JvmName("jyytnbocbyjyydpy")
public suspend fun groupId(`value`: Output) {
this.groupId = value
}
/**
* @param value The resource id of the resource the shared private link resource is for.
*/
@JvmName("jowomekcghaaoynx")
public suspend fun privateLink(`value`: Output) {
this.privateLink = value
}
/**
* @param value The location of the shared private link resource
*/
@JvmName("vphmglpxxcrusgis")
public suspend fun privateLinkLocation(`value`: Output) {
this.privateLinkLocation = value
}
/**
* @param value The request message for requesting approval of the shared private link resource.
*/
@JvmName("xqqiclnwnbimkefs")
public suspend fun requestMessage(`value`: Output) {
this.requestMessage = value
}
/**
* @param value Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout.
*/
@JvmName("rtkggvrvjbwunmwj")
public suspend fun status(`value`: Output) {
this.status = value
}
/**
* @param value The group id from the provider of resource the shared private link resource is for.
*/
@JvmName("riqkispdlyoyxjsx")
public suspend fun groupId(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.groupId = mapped
}
/**
* @param value The resource id of the resource the shared private link resource is for.
*/
@JvmName("suyjwtbohytlyejb")
public suspend fun privateLink(`value`: ResourceReferenceArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.privateLink = mapped
}
/**
* @param argument The resource id of the resource the shared private link resource is for.
*/
@JvmName("fgithifrihkkhqhh")
public suspend fun privateLink(argument: suspend ResourceReferenceArgsBuilder.() -> Unit) {
val toBeMapped = ResourceReferenceArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.privateLink = mapped
}
/**
* @param value The location of the shared private link resource
*/
@JvmName("opswgeqvqwmqumyn")
public suspend fun privateLinkLocation(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.privateLinkLocation = mapped
}
/**
* @param value The request message for requesting approval of the shared private link resource.
*/
@JvmName("gkmgxhqadnbtvceg")
public suspend fun requestMessage(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.requestMessage = mapped
}
/**
* @param value Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout.
*/
@JvmName("fcdxqhdthvqtdbsw")
public suspend fun status(`value`: SharedPrivateLinkResourceStatus?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.status = mapped
}
internal fun build(): SharedPrivateLinkResourcePropertiesArgs =
SharedPrivateLinkResourcePropertiesArgs(
groupId = groupId,
privateLink = privateLink,
privateLinkLocation = privateLinkLocation,
requestMessage = requestMessage,
status = status,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy