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

com.pulumi.awsnative.imagebuilder.kotlin.outputs.ImageRecipeInstanceBlockDeviceMapping.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.imagebuilder.kotlin.outputs

import kotlin.String
import kotlin.Suppress

/**
 * Defines block device mappings for the instance used to configure your image.
 * @property deviceName The device to which these mappings apply.
 * @property ebs Use to manage Amazon EBS-specific configuration for this mapping.
 * @property noDevice Use to remove a mapping from the parent image.
 * @property virtualName Use to manage instance ephemeral devices.
 */
public data class ImageRecipeInstanceBlockDeviceMapping(
    public val deviceName: String? = null,
    public val ebs: ImageRecipeEbsInstanceBlockDeviceSpecification? = null,
    public val noDevice: String? = null,
    public val virtualName: String? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.imagebuilder.outputs.ImageRecipeInstanceBlockDeviceMapping): ImageRecipeInstanceBlockDeviceMapping = ImageRecipeInstanceBlockDeviceMapping(
            deviceName = javaType.deviceName().map({ args0 -> args0 }).orElse(null),
            ebs = javaType.ebs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.imagebuilder.kotlin.outputs.ImageRecipeEbsInstanceBlockDeviceSpecification.Companion.toKotlin(args0)
                })
            }).orElse(null),
            noDevice = javaType.noDevice().map({ args0 -> args0 }).orElse(null),
            virtualName = javaType.virtualName().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy