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

com.pulumi.azurenative.datafactory.kotlin.inputs.SapOpenHubLinkedServiceArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 2.82.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azurenative.datafactory.kotlin.inputs

import com.pulumi.azurenative.datafactory.inputs.SapOpenHubLinkedServiceArgs.builder
import com.pulumi.core.Either
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Any
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName

/**
 * SAP Business Warehouse Open Hub Destination Linked Service.
 * @property annotations List of tags that can be used for describing the linked service.
 * @property clientId Client ID of the client on the BW system where the open hub destination is located. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string).
 * @property connectVia The integration runtime reference.
 * @property description Linked service description.
 * @property encryptedCredential The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
 * @property language Language of the BW system where the open hub destination is located. The default value is EN. Type: string (or Expression with resultType string).
 * @property logonGroup The Logon Group for the SAP System. Type: string (or Expression with resultType string).
 * @property messageServer The hostname of the SAP Message Server. Type: string (or Expression with resultType string).
 * @property messageServerService The service name or port number of the Message Server. Type: string (or Expression with resultType string).
 * @property parameters Parameters for linked service.
 * @property password Password to access the SAP BW server where the open hub destination is located.
 * @property server Host name of the SAP BW instance where the open hub destination is located. Type: string (or Expression with resultType string).
 * @property systemId SystemID of the SAP system where the table is located. Type: string (or Expression with resultType string).
 * @property systemNumber System number of the BW system where the open hub destination is located. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string).
 * @property type Type of linked service.
 * Expected value is 'SapOpenHub'.
 * @property userName Username to access the SAP BW server where the open hub destination is located. Type: string (or Expression with resultType string).
 * @property version Version of the linked service.
 */
public data class SapOpenHubLinkedServiceArgs(
    public val annotations: Output>? = null,
    public val clientId: Output? = null,
    public val connectVia: Output? = null,
    public val description: Output? = null,
    public val encryptedCredential: Output? = null,
    public val language: Output? = null,
    public val logonGroup: Output? = null,
    public val messageServer: Output? = null,
    public val messageServerService: Output? = null,
    public val parameters: Output>? = null,
    public val password: Output>? = null,
    public val server: Output? = null,
    public val systemId: Output? = null,
    public val systemNumber: Output? = null,
    public val type: Output,
    public val userName: Output? = null,
    public val version: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.datafactory.inputs.SapOpenHubLinkedServiceArgs =
        com.pulumi.azurenative.datafactory.inputs.SapOpenHubLinkedServiceArgs.builder()
            .annotations(annotations?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .clientId(clientId?.applyValue({ args0 -> args0 }))
            .connectVia(connectVia?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .description(description?.applyValue({ args0 -> args0 }))
            .encryptedCredential(encryptedCredential?.applyValue({ args0 -> args0 }))
            .language(language?.applyValue({ args0 -> args0 }))
            .logonGroup(logonGroup?.applyValue({ args0 -> args0 }))
            .messageServer(messageServer?.applyValue({ args0 -> args0 }))
            .messageServerService(messageServerService?.applyValue({ args0 -> args0 }))
            .parameters(
                parameters?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.key.to(args0.value.let({ args0 -> args0.toJava() }))
                    }).toMap()
                }),
            )
            .password(
                password?.applyValue({ args0 ->
                    args0.transform({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    }, { args0 -> args0.let({ args0 -> args0.toJava() }) })
                }),
            )
            .server(server?.applyValue({ args0 -> args0 }))
            .systemId(systemId?.applyValue({ args0 -> args0 }))
            .systemNumber(systemNumber?.applyValue({ args0 -> args0 }))
            .type(type.applyValue({ args0 -> args0 }))
            .userName(userName?.applyValue({ args0 -> args0 }))
            .version(version?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [SapOpenHubLinkedServiceArgs].
 */
@PulumiTagMarker
public class SapOpenHubLinkedServiceArgsBuilder internal constructor() {
    private var annotations: Output>? = null

    private var clientId: Output? = null

    private var connectVia: Output? = null

    private var description: Output? = null

    private var encryptedCredential: Output? = null

    private var language: Output? = null

    private var logonGroup: Output? = null

    private var messageServer: Output? = null

    private var messageServerService: Output? = null

    private var parameters: Output>? = null

    private var password: Output>? = null

    private var server: Output? = null

    private var systemId: Output? = null

    private var systemNumber: Output? = null

    private var type: Output? = null

    private var userName: Output? = null

    private var version: Output? = null

    /**
     * @param value List of tags that can be used for describing the linked service.
     */
    @JvmName("obihxgbbqmtmkrfr")
    public suspend fun annotations(`value`: Output>) {
        this.annotations = value
    }

    @JvmName("koqjqcymvyuaqrcd")
    public suspend fun annotations(vararg values: Output) {
        this.annotations = Output.all(values.asList())
    }

    /**
     * @param values List of tags that can be used for describing the linked service.
     */
    @JvmName("engsrcysksqofixf")
    public suspend fun annotations(values: List>) {
        this.annotations = Output.all(values)
    }

    /**
     * @param value Client ID of the client on the BW system where the open hub destination is located. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string).
     */
    @JvmName("jilcnudmftlrpejk")
    public suspend fun clientId(`value`: Output) {
        this.clientId = value
    }

    /**
     * @param value The integration runtime reference.
     */
    @JvmName("ioyvbrhyaxqvkaxd")
    public suspend fun connectVia(`value`: Output) {
        this.connectVia = value
    }

    /**
     * @param value Linked service description.
     */
    @JvmName("mjdakgxlsjgmugrn")
    public suspend fun description(`value`: Output) {
        this.description = value
    }

    /**
     * @param value The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
     */
    @JvmName("ckukqrlginsftpsq")
    public suspend fun encryptedCredential(`value`: Output) {
        this.encryptedCredential = value
    }

    /**
     * @param value Language of the BW system where the open hub destination is located. The default value is EN. Type: string (or Expression with resultType string).
     */
    @JvmName("nayknvhkrpdlimna")
    public suspend fun language(`value`: Output) {
        this.language = value
    }

    /**
     * @param value The Logon Group for the SAP System. Type: string (or Expression with resultType string).
     */
    @JvmName("qghvpkfmahjdwkph")
    public suspend fun logonGroup(`value`: Output) {
        this.logonGroup = value
    }

    /**
     * @param value The hostname of the SAP Message Server. Type: string (or Expression with resultType string).
     */
    @JvmName("aetrrrutswmfdmah")
    public suspend fun messageServer(`value`: Output) {
        this.messageServer = value
    }

    /**
     * @param value The service name or port number of the Message Server. Type: string (or Expression with resultType string).
     */
    @JvmName("vwsgmcvhvdvgigfs")
    public suspend fun messageServerService(`value`: Output) {
        this.messageServerService = value
    }

    /**
     * @param value Parameters for linked service.
     */
    @JvmName("jkyevrgwiglnhdtg")
    public suspend fun parameters(`value`: Output>) {
        this.parameters = value
    }

    /**
     * @param value Password to access the SAP BW server where the open hub destination is located.
     */
    @JvmName("cigskogprfesdiby")
    public suspend fun password(`value`: Output>) {
        this.password = value
    }

    /**
     * @param value Host name of the SAP BW instance where the open hub destination is located. Type: string (or Expression with resultType string).
     */
    @JvmName("urmgowhsavnmijfy")
    public suspend fun server(`value`: Output) {
        this.server = value
    }

    /**
     * @param value SystemID of the SAP system where the table is located. Type: string (or Expression with resultType string).
     */
    @JvmName("gmdomuslaxrteflv")
    public suspend fun systemId(`value`: Output) {
        this.systemId = value
    }

    /**
     * @param value System number of the BW system where the open hub destination is located. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string).
     */
    @JvmName("cxekshunwvpgrdwf")
    public suspend fun systemNumber(`value`: Output) {
        this.systemNumber = value
    }

    /**
     * @param value Type of linked service.
     * Expected value is 'SapOpenHub'.
     */
    @JvmName("jwpbeicabwhnfmkp")
    public suspend fun type(`value`: Output) {
        this.type = value
    }

    /**
     * @param value Username to access the SAP BW server where the open hub destination is located. Type: string (or Expression with resultType string).
     */
    @JvmName("adlhjgrmovedyexb")
    public suspend fun userName(`value`: Output) {
        this.userName = value
    }

    /**
     * @param value Version of the linked service.
     */
    @JvmName("mcamjbfqxwfudfan")
    public suspend fun version(`value`: Output) {
        this.version = value
    }

    /**
     * @param value List of tags that can be used for describing the linked service.
     */
    @JvmName("qnpwrsnsulnlxkdh")
    public suspend fun annotations(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.annotations = mapped
    }

    /**
     * @param values List of tags that can be used for describing the linked service.
     */
    @JvmName("eiextoemtpnaquym")
    public suspend fun annotations(vararg values: Any) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.annotations = mapped
    }

    /**
     * @param value Client ID of the client on the BW system where the open hub destination is located. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string).
     */
    @JvmName("yanlerqavoofronx")
    public suspend fun clientId(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clientId = mapped
    }

    /**
     * @param value The integration runtime reference.
     */
    @JvmName("slaqsarwmkekssdy")
    public suspend fun connectVia(`value`: IntegrationRuntimeReferenceArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.connectVia = mapped
    }

    /**
     * @param argument The integration runtime reference.
     */
    @JvmName("rrnjrlclagfhgtia")
    public suspend fun connectVia(argument: suspend IntegrationRuntimeReferenceArgsBuilder.() -> Unit) {
        val toBeMapped = IntegrationRuntimeReferenceArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.connectVia = mapped
    }

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

    /**
     * @param value The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
     */
    @JvmName("oqmqyyrtfwjgeawy")
    public suspend fun encryptedCredential(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.encryptedCredential = mapped
    }

    /**
     * @param value Language of the BW system where the open hub destination is located. The default value is EN. Type: string (or Expression with resultType string).
     */
    @JvmName("lvqbustxkgguwsif")
    public suspend fun language(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.language = mapped
    }

    /**
     * @param value The Logon Group for the SAP System. Type: string (or Expression with resultType string).
     */
    @JvmName("tvvprygpuwjinduj")
    public suspend fun logonGroup(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.logonGroup = mapped
    }

    /**
     * @param value The hostname of the SAP Message Server. Type: string (or Expression with resultType string).
     */
    @JvmName("xahuwqbflsgacbts")
    public suspend fun messageServer(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.messageServer = mapped
    }

    /**
     * @param value The service name or port number of the Message Server. Type: string (or Expression with resultType string).
     */
    @JvmName("orpmsrvjogexenyc")
    public suspend fun messageServerService(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.messageServerService = mapped
    }

    /**
     * @param value Parameters for linked service.
     */
    @JvmName("kwanmcgmanhcsvnw")
    public suspend fun parameters(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.parameters = mapped
    }

    /**
     * @param argument Parameters for linked service.
     */
    @JvmName("xvtgysmpopxynnno")
    public suspend fun parameters(vararg argument: Pair Unit>) {
        val toBeMapped = argument.toList().map { (left, right) ->
            left to
                ParameterSpecificationArgsBuilder().applySuspend { right() }.build()
        }.toMap()
        val mapped = of(toBeMapped)
        this.parameters = mapped
    }

    /**
     * @param values Parameters for linked service.
     */
    @JvmName("kvcwopltpwewhdxw")
    public fun parameters(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.parameters = mapped
    }

    /**
     * @param value Password to access the SAP BW server where the open hub destination is located.
     */
    @JvmName("pqvxenfytoccrqxf")
    public suspend fun password(`value`: Either?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.password = mapped
    }

    /**
     * @param value Password to access the SAP BW server where the open hub destination is located.
     */
    @JvmName("cnvxtysupxtycnqq")
    public fun password(`value`: AzureKeyVaultSecretReferenceArgs) {
        val toBeMapped = Either.ofLeft(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.password = mapped
    }

    /**
     * @param value Password to access the SAP BW server where the open hub destination is located.
     */
    @JvmName("ysntnjcdmttpocwe")
    public fun password(`value`: SecureStringArgs) {
        val toBeMapped = Either.ofRight(value)
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.password = mapped
    }

    /**
     * @param value Host name of the SAP BW instance where the open hub destination is located. Type: string (or Expression with resultType string).
     */
    @JvmName("ljhnsewfbdpvicqh")
    public suspend fun server(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.server = mapped
    }

    /**
     * @param value SystemID of the SAP system where the table is located. Type: string (or Expression with resultType string).
     */
    @JvmName("bkmljipsddhuiiqj")
    public suspend fun systemId(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.systemId = mapped
    }

    /**
     * @param value System number of the BW system where the open hub destination is located. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string).
     */
    @JvmName("sudlvmyrvwddphwx")
    public suspend fun systemNumber(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.systemNumber = mapped
    }

    /**
     * @param value Type of linked service.
     * Expected value is 'SapOpenHub'.
     */
    @JvmName("pmacesynlweodyit")
    public suspend fun type(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.type = mapped
    }

    /**
     * @param value Username to access the SAP BW server where the open hub destination is located. Type: string (or Expression with resultType string).
     */
    @JvmName("pcfmqdrlrvbfyvjy")
    public suspend fun userName(`value`: Any?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.userName = mapped
    }

    /**
     * @param value Version of the linked service.
     */
    @JvmName("bxruwduhxictxuvr")
    public suspend fun version(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.version = mapped
    }

    internal fun build(): SapOpenHubLinkedServiceArgs = SapOpenHubLinkedServiceArgs(
        annotations = annotations,
        clientId = clientId,
        connectVia = connectVia,
        description = description,
        encryptedCredential = encryptedCredential,
        language = language,
        logonGroup = logonGroup,
        messageServer = messageServer,
        messageServerService = messageServerService,
        parameters = parameters,
        password = password,
        server = server,
        systemId = systemId,
        systemNumber = systemNumber,
        type = type ?: throw PulumiNullFieldException("type"),
        userName = userName,
        version = version,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy