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

com.pulumi.awsnative.entityresolution.kotlin.inputs.IdMappingWorkflowIdMappingTechniquesArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.entityresolution.kotlin.inputs

import com.pulumi.awsnative.entityresolution.inputs.IdMappingWorkflowIdMappingTechniquesArgs.builder
import com.pulumi.awsnative.entityresolution.kotlin.enums.IdMappingWorkflowIdMappingTechniquesIdMappingType
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

/**
 *
 * @property idMappingType The type of ID mapping.
 * @property normalizationVersion
 * @property providerProperties An object which defines any additional configurations required by the provider service.
 * @property ruleBasedProperties
 */
public data class IdMappingWorkflowIdMappingTechniquesArgs(
    public val idMappingType: Output? = null,
    public val normalizationVersion: Output? = null,
    public val providerProperties: Output? = null,
    public val ruleBasedProperties: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.entityresolution.inputs.IdMappingWorkflowIdMappingTechniquesArgs =
        com.pulumi.awsnative.entityresolution.inputs.IdMappingWorkflowIdMappingTechniquesArgs.builder()
            .idMappingType(idMappingType?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .normalizationVersion(normalizationVersion?.applyValue({ args0 -> args0 }))
            .providerProperties(
                providerProperties?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .ruleBasedProperties(
                ruleBasedProperties?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [IdMappingWorkflowIdMappingTechniquesArgs].
 */
@PulumiTagMarker
public class IdMappingWorkflowIdMappingTechniquesArgsBuilder internal constructor() {
    private var idMappingType: Output? = null

    private var normalizationVersion: Output? = null

    private var providerProperties: Output? = null

    private var ruleBasedProperties: Output? = null

    /**
     * @param value The type of ID mapping.
     */
    @JvmName("lgevqxuohurglucc")
    public suspend fun idMappingType(`value`: Output) {
        this.idMappingType = value
    }

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

    /**
     * @param value An object which defines any additional configurations required by the provider service.
     */
    @JvmName("bwrwryhemvdibiak")
    public suspend fun providerProperties(`value`: Output) {
        this.providerProperties = value
    }

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

    /**
     * @param value The type of ID mapping.
     */
    @JvmName("tdwxnsrltylbcyfa")
    public suspend fun idMappingType(`value`: IdMappingWorkflowIdMappingTechniquesIdMappingType?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.idMappingType = mapped
    }

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

    /**
     * @param value An object which defines any additional configurations required by the provider service.
     */
    @JvmName("uhauvubicxrxgtdm")
    public suspend fun providerProperties(`value`: IdMappingWorkflowProviderPropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.providerProperties = mapped
    }

    /**
     * @param argument An object which defines any additional configurations required by the provider service.
     */
    @JvmName("lgixrdelrwmuqmly")
    public suspend fun providerProperties(argument: suspend IdMappingWorkflowProviderPropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = IdMappingWorkflowProviderPropertiesArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.providerProperties = mapped
    }

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

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

    internal fun build(): IdMappingWorkflowIdMappingTechniquesArgs =
        IdMappingWorkflowIdMappingTechniquesArgs(
            idMappingType = idMappingType,
            normalizationVersion = normalizationVersion,
            providerProperties = providerProperties,
            ruleBasedProperties = ruleBasedProperties,
        )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy