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

com.pulumi.awsnative.transfer.kotlin.inputs.WorkflowStepCopyStepDetailsPropertiesArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.transfer.kotlin.inputs

import com.pulumi.awsnative.transfer.inputs.WorkflowStepCopyStepDetailsPropertiesArgs.builder
import com.pulumi.awsnative.transfer.kotlin.enums.WorkflowStepCopyStepDetailsPropertiesOverwriteExisting
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

/**
 * Details for a step that performs a file copy.
 * @property destinationFileLocation
 * @property name The name of the step, used as an identifier.
 * @property overwriteExisting A flag that indicates whether or not to overwrite an existing file of the same name. The default is FALSE.
 * @property sourceFileLocation Specifies which file to use as input to the workflow step.
 */
public data class WorkflowStepCopyStepDetailsPropertiesArgs(
    public val destinationFileLocation: Output? = null,
    public val name: Output? = null,
    public val overwriteExisting: Output? =
        null,
    public val sourceFileLocation: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.transfer.inputs.WorkflowStepCopyStepDetailsPropertiesArgs =
        com.pulumi.awsnative.transfer.inputs.WorkflowStepCopyStepDetailsPropertiesArgs.builder()
            .destinationFileLocation(
                destinationFileLocation?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .name(name?.applyValue({ args0 -> args0 }))
            .overwriteExisting(overwriteExisting?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .sourceFileLocation(sourceFileLocation?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [WorkflowStepCopyStepDetailsPropertiesArgs].
 */
@PulumiTagMarker
public class WorkflowStepCopyStepDetailsPropertiesArgsBuilder internal constructor() {
    private var destinationFileLocation: Output? = null

    private var name: Output? = null

    private var overwriteExisting: Output? =
        null

    private var sourceFileLocation: Output? = null

    /**
     * @param value
     */
    @JvmName("ownbhkekptxrofsq")
    public suspend fun destinationFileLocation(`value`: Output) {
        this.destinationFileLocation = value
    }

    /**
     * @param value The name of the step, used as an identifier.
     */
    @JvmName("gyerjexvyxhqcevr")
    public suspend fun name(`value`: Output) {
        this.name = value
    }

    /**
     * @param value A flag that indicates whether or not to overwrite an existing file of the same name. The default is FALSE.
     */
    @JvmName("loeyvqfhixxwylvc")
    public suspend fun overwriteExisting(`value`: Output) {
        this.overwriteExisting = value
    }

    /**
     * @param value Specifies which file to use as input to the workflow step.
     */
    @JvmName("rumjojkqbvoycsrp")
    public suspend fun sourceFileLocation(`value`: Output) {
        this.sourceFileLocation = value
    }

    /**
     * @param value
     */
    @JvmName("gaufoqkotleolrno")
    public suspend fun destinationFileLocation(`value`: WorkflowS3FileLocationArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.destinationFileLocation = mapped
    }

    /**
     * @param argument
     */
    @JvmName("ruuetocbfaphjgmr")
    public suspend fun destinationFileLocation(argument: suspend WorkflowS3FileLocationArgsBuilder.() -> Unit) {
        val toBeMapped = WorkflowS3FileLocationArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.destinationFileLocation = mapped
    }

    /**
     * @param value The name of the step, used as an identifier.
     */
    @JvmName("ifkmctmmxawnjyja")
    public suspend fun name(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.name = mapped
    }

    /**
     * @param value A flag that indicates whether or not to overwrite an existing file of the same name. The default is FALSE.
     */
    @JvmName("jmiivujsmtoyhpgp")
    public suspend fun overwriteExisting(`value`: WorkflowStepCopyStepDetailsPropertiesOverwriteExisting?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.overwriteExisting = mapped
    }

    /**
     * @param value Specifies which file to use as input to the workflow step.
     */
    @JvmName("hbmbykljwsvnwced")
    public suspend fun sourceFileLocation(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sourceFileLocation = mapped
    }

    internal fun build(): WorkflowStepCopyStepDetailsPropertiesArgs =
        WorkflowStepCopyStepDetailsPropertiesArgs(
            destinationFileLocation = destinationFileLocation,
            name = name,
            overwriteExisting = overwriteExisting,
            sourceFileLocation = sourceFileLocation,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy