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

com.pulumi.awsnative.appflow.kotlin.inputs.FlowSourceConnectorPropertiesArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.appflow.kotlin.inputs

import com.pulumi.awsnative.appflow.inputs.FlowSourceConnectorPropertiesArgs.builder
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.Suppress
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * Source connector details required to query a connector
 * @property amplitude Specifies the information that is required for querying Amplitude.
 * @property customConnector The properties that are applied when the custom connector is being used as a source.
 * @property datadog Specifies the information that is required for querying Datadog.
 * @property dynatrace Specifies the information that is required for querying Dynatrace.
 * @property googleAnalytics Specifies the information that is required for querying Google Analytics.
 * @property inforNexus Specifies the information that is required for querying Infor Nexus.
 * @property marketo Specifies the information that is required for querying Marketo.
 * @property pardot Specifies the information that is required for querying Salesforce Pardot.
 * @property s3 Specifies the information that is required for querying Amazon S3.
 * @property salesforce Specifies the information that is required for querying Salesforce.
 * @property sapoData The properties that are applied when using SAPOData as a flow source.
 * @property serviceNow Specifies the information that is required for querying ServiceNow.
 * @property singular Specifies the information that is required for querying Singular.
 * @property slack Specifies the information that is required for querying Slack.
 * @property trendmicro Specifies the information that is required for querying Trend Micro.
 * @property veeva Specifies the information that is required for querying Veeva.
 * @property zendesk Specifies the information that is required for querying Zendesk.
 */
public data class FlowSourceConnectorPropertiesArgs(
    public val amplitude: Output? = null,
    public val customConnector: Output? = null,
    public val datadog: Output? = null,
    public val dynatrace: Output? = null,
    public val googleAnalytics: Output? = null,
    public val inforNexus: Output? = null,
    public val marketo: Output? = null,
    public val pardot: Output? = null,
    public val s3: Output? = null,
    public val salesforce: Output? = null,
    public val sapoData: Output? = null,
    public val serviceNow: Output? = null,
    public val singular: Output? = null,
    public val slack: Output? = null,
    public val trendmicro: Output? = null,
    public val veeva: Output? = null,
    public val zendesk: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.appflow.inputs.FlowSourceConnectorPropertiesArgs =
        com.pulumi.awsnative.appflow.inputs.FlowSourceConnectorPropertiesArgs.builder()
            .amplitude(amplitude?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .customConnector(customConnector?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .datadog(datadog?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .dynatrace(dynatrace?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .googleAnalytics(googleAnalytics?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .inforNexus(inforNexus?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .marketo(marketo?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .pardot(pardot?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .s3(s3?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .salesforce(salesforce?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .sapoData(sapoData?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .serviceNow(serviceNow?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .singular(singular?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .slack(slack?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .trendmicro(trendmicro?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .veeva(veeva?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .zendesk(zendesk?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) })).build()
}

/**
 * Builder for [FlowSourceConnectorPropertiesArgs].
 */
@PulumiTagMarker
public class FlowSourceConnectorPropertiesArgsBuilder internal constructor() {
    private var amplitude: Output? = null

    private var customConnector: Output? = null

    private var datadog: Output? = null

    private var dynatrace: Output? = null

    private var googleAnalytics: Output? = null

    private var inforNexus: Output? = null

    private var marketo: Output? = null

    private var pardot: Output? = null

    private var s3: Output? = null

    private var salesforce: Output? = null

    private var sapoData: Output? = null

    private var serviceNow: Output? = null

    private var singular: Output? = null

    private var slack: Output? = null

    private var trendmicro: Output? = null

    private var veeva: Output? = null

    private var zendesk: Output? = null

    /**
     * @param value Specifies the information that is required for querying Amplitude.
     */
    @JvmName("xqneejtjgwohpcnb")
    public suspend fun amplitude(`value`: Output) {
        this.amplitude = value
    }

    /**
     * @param value The properties that are applied when the custom connector is being used as a source.
     */
    @JvmName("wfktnlfprrcxfwku")
    public suspend fun customConnector(`value`: Output) {
        this.customConnector = value
    }

    /**
     * @param value Specifies the information that is required for querying Datadog.
     */
    @JvmName("wrxlpgrdiwywojgq")
    public suspend fun datadog(`value`: Output) {
        this.datadog = value
    }

    /**
     * @param value Specifies the information that is required for querying Dynatrace.
     */
    @JvmName("hwpcyffofdkvvujr")
    public suspend fun dynatrace(`value`: Output) {
        this.dynatrace = value
    }

    /**
     * @param value Specifies the information that is required for querying Google Analytics.
     */
    @JvmName("cnwpsrvhhpemdhby")
    public suspend fun googleAnalytics(`value`: Output) {
        this.googleAnalytics = value
    }

    /**
     * @param value Specifies the information that is required for querying Infor Nexus.
     */
    @JvmName("ghrflicvrwrkbmdt")
    public suspend fun inforNexus(`value`: Output) {
        this.inforNexus = value
    }

    /**
     * @param value Specifies the information that is required for querying Marketo.
     */
    @JvmName("qkbpxdwwrpbpxkdk")
    public suspend fun marketo(`value`: Output) {
        this.marketo = value
    }

    /**
     * @param value Specifies the information that is required for querying Salesforce Pardot.
     */
    @JvmName("wniwphfvmgmiijxb")
    public suspend fun pardot(`value`: Output) {
        this.pardot = value
    }

    /**
     * @param value Specifies the information that is required for querying Amazon S3.
     */
    @JvmName("pigfigyiblnnuuvq")
    public suspend fun s3(`value`: Output) {
        this.s3 = value
    }

    /**
     * @param value Specifies the information that is required for querying Salesforce.
     */
    @JvmName("ffolrjmuxpfsqfep")
    public suspend fun salesforce(`value`: Output) {
        this.salesforce = value
    }

    /**
     * @param value The properties that are applied when using SAPOData as a flow source.
     */
    @JvmName("leqxejbhpnopbxea")
    public suspend fun sapoData(`value`: Output) {
        this.sapoData = value
    }

    /**
     * @param value Specifies the information that is required for querying ServiceNow.
     */
    @JvmName("plmurehdhvcykyeu")
    public suspend fun serviceNow(`value`: Output) {
        this.serviceNow = value
    }

    /**
     * @param value Specifies the information that is required for querying Singular.
     */
    @JvmName("lmcegvydofejohle")
    public suspend fun singular(`value`: Output) {
        this.singular = value
    }

    /**
     * @param value Specifies the information that is required for querying Slack.
     */
    @JvmName("fsdvmrtuybykhxae")
    public suspend fun slack(`value`: Output) {
        this.slack = value
    }

    /**
     * @param value Specifies the information that is required for querying Trend Micro.
     */
    @JvmName("dgijposlujtxjoiu")
    public suspend fun trendmicro(`value`: Output) {
        this.trendmicro = value
    }

    /**
     * @param value Specifies the information that is required for querying Veeva.
     */
    @JvmName("ldmbmbfdpblglrbk")
    public suspend fun veeva(`value`: Output) {
        this.veeva = value
    }

    /**
     * @param value Specifies the information that is required for querying Zendesk.
     */
    @JvmName("mmgofbkhtekgkths")
    public suspend fun zendesk(`value`: Output) {
        this.zendesk = value
    }

    /**
     * @param value Specifies the information that is required for querying Amplitude.
     */
    @JvmName("kgpjitpsmqwbiaai")
    public suspend fun amplitude(`value`: FlowAmplitudeSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.amplitude = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Amplitude.
     */
    @JvmName("ipyicdrtxvtjqqig")
    public suspend fun amplitude(argument: suspend FlowAmplitudeSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowAmplitudeSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.amplitude = mapped
    }

    /**
     * @param value The properties that are applied when the custom connector is being used as a source.
     */
    @JvmName("jxtxmwyahwasdvry")
    public suspend fun customConnector(`value`: FlowCustomConnectorSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.customConnector = mapped
    }

    /**
     * @param argument The properties that are applied when the custom connector is being used as a source.
     */
    @JvmName("vnofukgnsnqdrwak")
    public suspend fun customConnector(argument: suspend FlowCustomConnectorSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowCustomConnectorSourcePropertiesArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.customConnector = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Datadog.
     */
    @JvmName("vvukytupmlbouscd")
    public suspend fun datadog(`value`: FlowDatadogSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.datadog = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Datadog.
     */
    @JvmName("jnrkerhdgcjbvfrr")
    public suspend fun datadog(argument: suspend FlowDatadogSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowDatadogSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.datadog = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Dynatrace.
     */
    @JvmName("sgnhnbkgtbvdrhgv")
    public suspend fun dynatrace(`value`: FlowDynatraceSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dynatrace = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Dynatrace.
     */
    @JvmName("eeqkkrdsabyintlm")
    public suspend fun dynatrace(argument: suspend FlowDynatraceSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowDynatraceSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.dynatrace = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Google Analytics.
     */
    @JvmName("jtyftbxagrckvfye")
    public suspend fun googleAnalytics(`value`: FlowGoogleAnalyticsSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.googleAnalytics = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Google Analytics.
     */
    @JvmName("kxvenabgnthenjva")
    public suspend fun googleAnalytics(argument: suspend FlowGoogleAnalyticsSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowGoogleAnalyticsSourcePropertiesArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.googleAnalytics = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Infor Nexus.
     */
    @JvmName("rtgabjmpimfplftx")
    public suspend fun inforNexus(`value`: FlowInforNexusSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.inforNexus = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Infor Nexus.
     */
    @JvmName("dxwfeibybmorldlm")
    public suspend fun inforNexus(argument: suspend FlowInforNexusSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowInforNexusSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.inforNexus = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Marketo.
     */
    @JvmName("autrsocytgxlgbpt")
    public suspend fun marketo(`value`: FlowMarketoSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.marketo = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Marketo.
     */
    @JvmName("jqnxsvgioxmnfnqd")
    public suspend fun marketo(argument: suspend FlowMarketoSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowMarketoSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.marketo = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Salesforce Pardot.
     */
    @JvmName("erivwpqhpdhbwtfk")
    public suspend fun pardot(`value`: FlowPardotSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.pardot = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Salesforce Pardot.
     */
    @JvmName("dydnsowqvdqnlomh")
    public suspend fun pardot(argument: suspend FlowPardotSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowPardotSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.pardot = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Amazon S3.
     */
    @JvmName("ikhoirdohmgsqibh")
    public suspend fun s3(`value`: FlowS3SourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.s3 = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Amazon S3.
     */
    @JvmName("mwdpjtttiabpvycw")
    public suspend fun s3(argument: suspend FlowS3SourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowS3SourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.s3 = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Salesforce.
     */
    @JvmName("asfawfxflcvdxfax")
    public suspend fun salesforce(`value`: FlowSalesforceSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.salesforce = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Salesforce.
     */
    @JvmName("vwhayicrmbqvpiuh")
    public suspend fun salesforce(argument: suspend FlowSalesforceSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowSalesforceSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.salesforce = mapped
    }

    /**
     * @param value The properties that are applied when using SAPOData as a flow source.
     */
    @JvmName("wguawwgseqgvhtik")
    public suspend fun sapoData(`value`: FlowSapoDataSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sapoData = mapped
    }

    /**
     * @param argument The properties that are applied when using SAPOData as a flow source.
     */
    @JvmName("upcfqhsnqevkmmtx")
    public suspend fun sapoData(argument: suspend FlowSapoDataSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowSapoDataSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.sapoData = mapped
    }

    /**
     * @param value Specifies the information that is required for querying ServiceNow.
     */
    @JvmName("yicdqbkxaeasinqh")
    public suspend fun serviceNow(`value`: FlowServiceNowSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.serviceNow = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying ServiceNow.
     */
    @JvmName("rpmarxckjlwngxvu")
    public suspend fun serviceNow(argument: suspend FlowServiceNowSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowServiceNowSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.serviceNow = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Singular.
     */
    @JvmName("mmorslljgrgqgvut")
    public suspend fun singular(`value`: FlowSingularSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.singular = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Singular.
     */
    @JvmName("rqkvbkylmoewdkfi")
    public suspend fun singular(argument: suspend FlowSingularSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowSingularSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.singular = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Slack.
     */
    @JvmName("opvgkknkyffodyvk")
    public suspend fun slack(`value`: FlowSlackSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.slack = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Slack.
     */
    @JvmName("nbikabgbgeyxgdkr")
    public suspend fun slack(argument: suspend FlowSlackSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowSlackSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.slack = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Trend Micro.
     */
    @JvmName("bbuvdqutetcgsiyg")
    public suspend fun trendmicro(`value`: FlowTrendmicroSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.trendmicro = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Trend Micro.
     */
    @JvmName("isxbxfywovqckerg")
    public suspend fun trendmicro(argument: suspend FlowTrendmicroSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowTrendmicroSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.trendmicro = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Veeva.
     */
    @JvmName("jyuycogkbduoewcc")
    public suspend fun veeva(`value`: FlowVeevaSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.veeva = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Veeva.
     */
    @JvmName("miivllmaenvjldiy")
    public suspend fun veeva(argument: suspend FlowVeevaSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowVeevaSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.veeva = mapped
    }

    /**
     * @param value Specifies the information that is required for querying Zendesk.
     */
    @JvmName("qrisnrcfsmikvocm")
    public suspend fun zendesk(`value`: FlowZendeskSourcePropertiesArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.zendesk = mapped
    }

    /**
     * @param argument Specifies the information that is required for querying Zendesk.
     */
    @JvmName("ikpcjgdtipcijrvh")
    public suspend fun zendesk(argument: suspend FlowZendeskSourcePropertiesArgsBuilder.() -> Unit) {
        val toBeMapped = FlowZendeskSourcePropertiesArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.zendesk = mapped
    }

    internal fun build(): FlowSourceConnectorPropertiesArgs = FlowSourceConnectorPropertiesArgs(
        amplitude = amplitude,
        customConnector = customConnector,
        datadog = datadog,
        dynatrace = dynatrace,
        googleAnalytics = googleAnalytics,
        inforNexus = inforNexus,
        marketo = marketo,
        pardot = pardot,
        s3 = s3,
        salesforce = salesforce,
        sapoData = sapoData,
        serviceNow = serviceNow,
        singular = singular,
        slack = slack,
        trendmicro = trendmicro,
        veeva = veeva,
        zendesk = zendesk,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy