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

com.pulumi.awsnative.entityresolution.kotlin.outputs.MatchingWorkflowRuleBasedProperties.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.entityresolution.kotlin.outputs

import com.pulumi.awsnative.entityresolution.kotlin.enums.MatchingWorkflowRuleBasedPropertiesAttributeMatchingModel
import com.pulumi.awsnative.entityresolution.kotlin.enums.MatchingWorkflowRuleBasedPropertiesMatchPurpose
import kotlin.Suppress
import kotlin.collections.List

/**
 *
 * @property attributeMatchingModel The comparison type. You can either choose `ONE_TO_ONE` or `MANY_TO_MANY` as the `attributeMatchingModel` .
 * If you choose `MANY_TO_MANY` , the system can match attributes across the sub-types of an attribute type. For example, if the value of the `Email` field of Profile A and the value of `BusinessEmail` field of Profile B matches, the two profiles are matched on the `Email` attribute type.
 * If you choose `ONE_TO_ONE` , the system can only match attributes if the sub-types are an exact match. For example, for the `Email` attribute type, the system will only consider it a match if the value of the `Email` field of Profile A matches the value of the `Email` field of Profile B.
 * @property matchPurpose An indicator of whether to generate IDs and index the data or not.
 * If you choose `IDENTIFIER_GENERATION` , the process generates IDs and indexes the data.
 * If you choose `INDEXING` , the process indexes the data without generating IDs.
 * @property rules A list of `Rule` objects, each of which have fields `RuleName` and `MatchingKeys` .
 */
public data class MatchingWorkflowRuleBasedProperties(
    public val attributeMatchingModel: MatchingWorkflowRuleBasedPropertiesAttributeMatchingModel,
    public val matchPurpose: MatchingWorkflowRuleBasedPropertiesMatchPurpose? = null,
    public val rules: List,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.entityresolution.outputs.MatchingWorkflowRuleBasedProperties): MatchingWorkflowRuleBasedProperties = MatchingWorkflowRuleBasedProperties(
            attributeMatchingModel = javaType.attributeMatchingModel().let({ args0 ->
                com.pulumi.awsnative.entityresolution.kotlin.enums.MatchingWorkflowRuleBasedPropertiesAttributeMatchingModel.Companion.toKotlin(args0)
            }),
            matchPurpose = javaType.matchPurpose().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.entityresolution.kotlin.enums.MatchingWorkflowRuleBasedPropertiesMatchPurpose.Companion.toKotlin(args0)
                })
            }).orElse(null),
            rules = javaType.rules().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.entityresolution.kotlin.outputs.MatchingWorkflowRule.Companion.toKotlin(args0)
                })
            }),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy