Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azurenative.security.kotlin.inputs.SecurityAssessmentMetadataPropertiesArgs.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.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azurenative.security.kotlin.inputs
import com.pulumi.azurenative.security.inputs.SecurityAssessmentMetadataPropertiesArgs.builder
import com.pulumi.azurenative.security.kotlin.enums.AssessmentType
import com.pulumi.azurenative.security.kotlin.enums.Categories
import com.pulumi.azurenative.security.kotlin.enums.ImplementationEffort
import com.pulumi.azurenative.security.kotlin.enums.Severity
import com.pulumi.azurenative.security.kotlin.enums.Threats
import com.pulumi.azurenative.security.kotlin.enums.UserImpact
import com.pulumi.core.Either
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.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Describes properties of an assessment metadata.
* @property assessmentType BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition
* @property categories
* @property description Human readable description of the assessment
* @property displayName User friendly display name of the assessment
* @property implementationEffort The implementation effort required to remediate this assessment
* @property partnerData Describes the partner that created the assessment
* @property preview True if this assessment is in preview release status
* @property remediationDescription Human readable description of what you should do to mitigate this security issue
* @property severity The severity level of the assessment
* @property threats
* @property userImpact The user impact of the assessment
*/
public data class SecurityAssessmentMetadataPropertiesArgs(
public val assessmentType: Output>,
public val categories: Output>>? = null,
public val description: Output? = null,
public val displayName: Output,
public val implementationEffort: Output>? = null,
public val partnerData: Output? = null,
public val preview: Output? = null,
public val remediationDescription: Output? = null,
public val severity: Output>,
public val threats: Output>>? = null,
public val userImpact: Output>? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.azurenative.security.inputs.SecurityAssessmentMetadataPropertiesArgs =
com.pulumi.azurenative.security.inputs.SecurityAssessmentMetadataPropertiesArgs.builder()
.assessmentType(
assessmentType.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.categories(
categories?.applyValue({ args0 ->
args0.map({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
})
}),
)
.description(description?.applyValue({ args0 -> args0 }))
.displayName(displayName.applyValue({ args0 -> args0 }))
.implementationEffort(
implementationEffort?.applyValue({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
}),
)
.partnerData(partnerData?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.preview(preview?.applyValue({ args0 -> args0 }))
.remediationDescription(remediationDescription?.applyValue({ args0 -> args0 }))
.severity(
severity.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
)
.threats(
threats?.applyValue({ args0 ->
args0.map({ args0 ->
args0.transform(
{ args0 -> args0 },
{ args0 -> args0.let({ args0 -> args0.toJava() }) },
)
})
}),
)
.userImpact(
userImpact?.applyValue({ args0 ->
args0.transform({ args0 -> args0 }, { args0 ->
args0.let({ args0 -> args0.toJava() })
})
}),
).build()
}
/**
* Builder for [SecurityAssessmentMetadataPropertiesArgs].
*/
@PulumiTagMarker
public class SecurityAssessmentMetadataPropertiesArgsBuilder internal constructor() {
private var assessmentType: Output>? = null
private var categories: Output>>? = null
private var description: Output? = null
private var displayName: Output? = null
private var implementationEffort: Output>? = null
private var partnerData: Output? = null
private var preview: Output? = null
private var remediationDescription: Output? = null
private var severity: Output>? = null
private var threats: Output>>? = null
private var userImpact: Output>? = null
/**
* @param value BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition
*/
@JvmName("rwtabdwugpqnvxhn")
public suspend fun assessmentType(`value`: Output>) {
this.assessmentType = value
}
/**
* @param value
*/
@JvmName("jjjulfevihbflvrw")
public suspend fun categories(`value`: Output>>) {
this.categories = value
}
@JvmName("vwqosolqafskksft")
public suspend fun categories(vararg values: Output>) {
this.categories = Output.all(values.asList())
}
/**
* @param values
*/
@JvmName("nugsbmlljgorgydt")
public suspend fun categories(values: List>>) {
this.categories = Output.all(values)
}
/**
* @param value Human readable description of the assessment
*/
@JvmName("baaqrmhrfsuaybgp")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value User friendly display name of the assessment
*/
@JvmName("vfaxepdfctmjkoxg")
public suspend fun displayName(`value`: Output) {
this.displayName = value
}
/**
* @param value The implementation effort required to remediate this assessment
*/
@JvmName("kcffsvonxqmbblki")
public suspend fun implementationEffort(`value`: Output>) {
this.implementationEffort = value
}
/**
* @param value Describes the partner that created the assessment
*/
@JvmName("cbjtxjxmcftfidws")
public suspend fun partnerData(`value`: Output) {
this.partnerData = value
}
/**
* @param value True if this assessment is in preview release status
*/
@JvmName("rcrnvntwfrxnaeov")
public suspend fun preview(`value`: Output) {
this.preview = value
}
/**
* @param value Human readable description of what you should do to mitigate this security issue
*/
@JvmName("kviorcrsmiwvouqy")
public suspend fun remediationDescription(`value`: Output) {
this.remediationDescription = value
}
/**
* @param value The severity level of the assessment
*/
@JvmName("vbgylecjkcrgrupv")
public suspend fun severity(`value`: Output>) {
this.severity = value
}
/**
* @param value
*/
@JvmName("hkbnthcedmmxrqxc")
public suspend fun threats(`value`: Output>>) {
this.threats = value
}
@JvmName("oljjaskyupvsvnub")
public suspend fun threats(vararg values: Output>) {
this.threats = Output.all(values.asList())
}
/**
* @param values
*/
@JvmName("asnaemehpsunsgcc")
public suspend fun threats(values: List>>) {
this.threats = Output.all(values)
}
/**
* @param value The user impact of the assessment
*/
@JvmName("fciigoyxfyoegpuy")
public suspend fun userImpact(`value`: Output>) {
this.userImpact = value
}
/**
* @param value BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition
*/
@JvmName("fihmxpbbmsyklqfv")
public suspend fun assessmentType(`value`: Either) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.assessmentType = mapped
}
/**
* @param value BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition
*/
@JvmName("qdloakfnacmdyqwv")
public fun assessmentType(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.assessmentType = mapped
}
/**
* @param value BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition
*/
@JvmName("iojfdkqjgewputmi")
public fun assessmentType(`value`: AssessmentType) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.assessmentType = mapped
}
/**
* @param value
*/
@JvmName("fgvvbkucosntmkaf")
public suspend fun categories(`value`: List>?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.categories = mapped
}
/**
* @param values
*/
@JvmName("rmqqyhklinjxywgk")
public suspend fun categories(vararg values: Either) {
val toBeMapped = values.toList()
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.categories = mapped
}
/**
* @param value Human readable description of the assessment
*/
@JvmName("pqvqajxciydwnljr")
public suspend fun description(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.description = mapped
}
/**
* @param value User friendly display name of the assessment
*/
@JvmName("ilywwafjyqqmdhpq")
public suspend fun displayName(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.displayName = mapped
}
/**
* @param value The implementation effort required to remediate this assessment
*/
@JvmName("ypyohmqbqutgctih")
public suspend fun implementationEffort(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.implementationEffort = mapped
}
/**
* @param value The implementation effort required to remediate this assessment
*/
@JvmName("oijoncdvyhvpwbvx")
public fun implementationEffort(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.implementationEffort = mapped
}
/**
* @param value The implementation effort required to remediate this assessment
*/
@JvmName("cfpjjgmiheonatjs")
public fun implementationEffort(`value`: ImplementationEffort) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.implementationEffort = mapped
}
/**
* @param value Describes the partner that created the assessment
*/
@JvmName("rkdminxcgmrfmsly")
public suspend fun partnerData(`value`: SecurityAssessmentMetadataPartnerDataArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.partnerData = mapped
}
/**
* @param argument Describes the partner that created the assessment
*/
@JvmName("pmwqnwnwmrdltmwk")
public suspend fun partnerData(argument: suspend SecurityAssessmentMetadataPartnerDataArgsBuilder.() -> Unit) {
val toBeMapped = SecurityAssessmentMetadataPartnerDataArgsBuilder().applySuspend {
argument()
}.build()
val mapped = of(toBeMapped)
this.partnerData = mapped
}
/**
* @param value True if this assessment is in preview release status
*/
@JvmName("diaeyhhrcomkpxos")
public suspend fun preview(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.preview = mapped
}
/**
* @param value Human readable description of what you should do to mitigate this security issue
*/
@JvmName("kmseqswyqwrswubg")
public suspend fun remediationDescription(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.remediationDescription = mapped
}
/**
* @param value The severity level of the assessment
*/
@JvmName("yutjhjnxrwltpquo")
public suspend fun severity(`value`: Either) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.severity = mapped
}
/**
* @param value The severity level of the assessment
*/
@JvmName("twdgkbtnysjqjeih")
public fun severity(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.severity = mapped
}
/**
* @param value The severity level of the assessment
*/
@JvmName("kuwpudduvmwqwvsr")
public fun severity(`value`: Severity) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.severity = mapped
}
/**
* @param value
*/
@JvmName("mgdfupthotmfkiqu")
public suspend fun threats(`value`: List>?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.threats = mapped
}
/**
* @param values
*/
@JvmName("thhussobtsqwwqxh")
public suspend fun threats(vararg values: Either) {
val toBeMapped = values.toList()
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.threats = mapped
}
/**
* @param value The user impact of the assessment
*/
@JvmName("ihpmoayrxhkrjmjt")
public suspend fun userImpact(`value`: Either?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.userImpact = mapped
}
/**
* @param value The user impact of the assessment
*/
@JvmName("vcssblgdrmcfgkwd")
public fun userImpact(`value`: String) {
val toBeMapped = Either.ofLeft(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.userImpact = mapped
}
/**
* @param value The user impact of the assessment
*/
@JvmName("xjpnjmctjjohyjdt")
public fun userImpact(`value`: UserImpact) {
val toBeMapped = Either.ofRight(value)
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.userImpact = mapped
}
internal fun build(): SecurityAssessmentMetadataPropertiesArgs =
SecurityAssessmentMetadataPropertiesArgs(
assessmentType = assessmentType ?: throw PulumiNullFieldException("assessmentType"),
categories = categories,
description = description,
displayName = displayName ?: throw PulumiNullFieldException("displayName"),
implementationEffort = implementationEffort,
partnerData = partnerData,
preview = preview,
remediationDescription = remediationDescription,
severity = severity ?: throw PulumiNullFieldException("severity"),
threats = threats,
userImpact = userImpact,
)
}