com.pulumi.googlenative.migrationcenter.v1alpha1.kotlin.inputs.ComputeEnginePreferencesArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.googlenative.migrationcenter.v1alpha1.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.googlenative.migrationcenter.v1alpha1.inputs.ComputeEnginePreferencesArgs.builder
import com.pulumi.googlenative.migrationcenter.v1alpha1.kotlin.enums.ComputeEnginePreferencesLicenseType
import com.pulumi.googlenative.migrationcenter.v1alpha1.kotlin.enums.ComputeEnginePreferencesPersistentDiskType
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName
/**
* The user preferences relating to Compute Engine target platform.
* @property licenseType License type to consider when calculating costs for virtual machine insights and recommendations. If unspecified, costs are calculated based on the default licensing plan.
* @property machinePreferences Preferences concerning the machine types to consider on Compute Engine.
* @property persistentDiskType Persistent disk type to use. If unspecified (default), all types are considered, based on available usage data.
*/
public data class ComputeEnginePreferencesArgs(
public val licenseType: Output? = null,
public val machinePreferences: Output? = null,
public val persistentDiskType: Output? = null,
) :
ConvertibleToJava {
override fun toJava(): com.pulumi.googlenative.migrationcenter.v1alpha1.inputs.ComputeEnginePreferencesArgs =
com.pulumi.googlenative.migrationcenter.v1alpha1.inputs.ComputeEnginePreferencesArgs.builder()
.licenseType(licenseType?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
.machinePreferences(
machinePreferences?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.persistentDiskType(
persistentDiskType?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
).build()
}
/**
* Builder for [ComputeEnginePreferencesArgs].
*/
@PulumiTagMarker
public class ComputeEnginePreferencesArgsBuilder internal constructor() {
private var licenseType: Output? = null
private var machinePreferences: Output? = null
private var persistentDiskType: Output? = null
/**
* @param value License type to consider when calculating costs for virtual machine insights and recommendations. If unspecified, costs are calculated based on the default licensing plan.
*/
@JvmName("xayonntdytkqjutd")
public suspend fun licenseType(`value`: Output) {
this.licenseType = value
}
/**
* @param value Preferences concerning the machine types to consider on Compute Engine.
*/
@JvmName("bqqkaynjrjdxnjnh")
public suspend fun machinePreferences(`value`: Output) {
this.machinePreferences = value
}
/**
* @param value Persistent disk type to use. If unspecified (default), all types are considered, based on available usage data.
*/
@JvmName("stfrsibprhqcwher")
public suspend fun persistentDiskType(`value`: Output) {
this.persistentDiskType = value
}
/**
* @param value License type to consider when calculating costs for virtual machine insights and recommendations. If unspecified, costs are calculated based on the default licensing plan.
*/
@JvmName("jlntmealccxuilpb")
public suspend fun licenseType(`value`: ComputeEnginePreferencesLicenseType?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.licenseType = mapped
}
/**
* @param value Preferences concerning the machine types to consider on Compute Engine.
*/
@JvmName("vgnaxmylacsycvdg")
public suspend fun machinePreferences(`value`: MachinePreferencesArgs?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.machinePreferences = mapped
}
/**
* @param argument Preferences concerning the machine types to consider on Compute Engine.
*/
@JvmName("yfqnbfxnnfbxfpnp")
public suspend fun machinePreferences(argument: suspend MachinePreferencesArgsBuilder.() -> Unit) {
val toBeMapped = MachinePreferencesArgsBuilder().applySuspend { argument() }.build()
val mapped = of(toBeMapped)
this.machinePreferences = mapped
}
/**
* @param value Persistent disk type to use. If unspecified (default), all types are considered, based on available usage data.
*/
@JvmName("wfacjxqahdlrhfrd")
public suspend fun persistentDiskType(`value`: ComputeEnginePreferencesPersistentDiskType?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.persistentDiskType = mapped
}
internal fun build(): ComputeEnginePreferencesArgs = ComputeEnginePreferencesArgs(
licenseType = licenseType,
machinePreferences = machinePreferences,
persistentDiskType = persistentDiskType,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy