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

com.pulumi.awsnative.groundstation.kotlin.inputs.ConfigDataArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.groundstation.kotlin.inputs

import com.pulumi.awsnative.groundstation.inputs.ConfigDataArgs.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

/**
 *
 * @property antennaDownlinkConfig Provides information for an antenna downlink config object. Antenna downlink config objects are used to provide parameters for downlinks where no demodulation or decoding is performed by Ground Station (RF over IP downlinks).
 * @property antennaDownlinkDemodDecodeConfig Provides information for a downlink demod decode config object. Downlink demod decode config objects are used to provide parameters for downlinks where the Ground Station service will demodulate and decode the downlinked data.
 * @property antennaUplinkConfig Provides information for an uplink config object. Uplink config objects are used to provide parameters for uplink contacts.
 * @property dataflowEndpointConfig Provides information for a dataflow endpoint config object. Dataflow endpoint config objects are used to provide parameters about which IP endpoint(s) to use during a contact. Dataflow endpoints are where Ground Station sends data during a downlink contact and where Ground Station receives data to send to the satellite during an uplink contact.
 * @property s3RecordingConfig Provides information for an S3 recording config object. S3 recording config objects are used to provide parameters for S3 recording during downlink contacts.
 * @property trackingConfig Provides information for a tracking config object. Tracking config objects are used to provide parameters about how to track the satellite through the sky during a contact.
 * @property uplinkEchoConfig Provides information for an uplink echo config object. Uplink echo config objects are used to provide parameters for uplink echo during uplink contacts.
 */
public data class ConfigDataArgs(
    public val antennaDownlinkConfig: Output? = null,
    public val antennaDownlinkDemodDecodeConfig: Output? =
        null,
    public val antennaUplinkConfig: Output? = null,
    public val dataflowEndpointConfig: Output? = null,
    public val s3RecordingConfig: Output? = null,
    public val trackingConfig: Output? = null,
    public val uplinkEchoConfig: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.awsnative.groundstation.inputs.ConfigDataArgs =
        com.pulumi.awsnative.groundstation.inputs.ConfigDataArgs.builder()
            .antennaDownlinkConfig(
                antennaDownlinkConfig?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .antennaDownlinkDemodDecodeConfig(
                antennaDownlinkDemodDecodeConfig?.applyValue({ args0 ->
                    args0.let({ args0 -> args0.toJava() })
                }),
            )
            .antennaUplinkConfig(
                antennaUplinkConfig?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .dataflowEndpointConfig(
                dataflowEndpointConfig?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .s3RecordingConfig(s3RecordingConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .trackingConfig(trackingConfig?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .uplinkEchoConfig(
                uplinkEchoConfig?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            ).build()
}

/**
 * Builder for [ConfigDataArgs].
 */
@PulumiTagMarker
public class ConfigDataArgsBuilder internal constructor() {
    private var antennaDownlinkConfig: Output? = null

    private var antennaDownlinkDemodDecodeConfig: Output? =
        null

    private var antennaUplinkConfig: Output? = null

    private var dataflowEndpointConfig: Output? = null

    private var s3RecordingConfig: Output? = null

    private var trackingConfig: Output? = null

    private var uplinkEchoConfig: Output? = null

    /**
     * @param value Provides information for an antenna downlink config object. Antenna downlink config objects are used to provide parameters for downlinks where no demodulation or decoding is performed by Ground Station (RF over IP downlinks).
     */
    @JvmName("fabbbcvjtfjmqxvf")
    public suspend fun antennaDownlinkConfig(`value`: Output) {
        this.antennaDownlinkConfig = value
    }

    /**
     * @param value Provides information for a downlink demod decode config object. Downlink demod decode config objects are used to provide parameters for downlinks where the Ground Station service will demodulate and decode the downlinked data.
     */
    @JvmName("jbxlgnkejrfnukcv")
    public suspend fun antennaDownlinkDemodDecodeConfig(`value`: Output) {
        this.antennaDownlinkDemodDecodeConfig = value
    }

    /**
     * @param value Provides information for an uplink config object. Uplink config objects are used to provide parameters for uplink contacts.
     */
    @JvmName("xacsxswwyxkpajtm")
    public suspend fun antennaUplinkConfig(`value`: Output) {
        this.antennaUplinkConfig = value
    }

    /**
     * @param value Provides information for a dataflow endpoint config object. Dataflow endpoint config objects are used to provide parameters about which IP endpoint(s) to use during a contact. Dataflow endpoints are where Ground Station sends data during a downlink contact and where Ground Station receives data to send to the satellite during an uplink contact.
     */
    @JvmName("batelejvyfmagbvf")
    public suspend fun dataflowEndpointConfig(`value`: Output) {
        this.dataflowEndpointConfig = value
    }

    /**
     * @param value Provides information for an S3 recording config object. S3 recording config objects are used to provide parameters for S3 recording during downlink contacts.
     */
    @JvmName("fsmrokaejefeleyy")
    public suspend fun s3RecordingConfig(`value`: Output) {
        this.s3RecordingConfig = value
    }

    /**
     * @param value Provides information for a tracking config object. Tracking config objects are used to provide parameters about how to track the satellite through the sky during a contact.
     */
    @JvmName("btpkvltqogpbvnff")
    public suspend fun trackingConfig(`value`: Output) {
        this.trackingConfig = value
    }

    /**
     * @param value Provides information for an uplink echo config object. Uplink echo config objects are used to provide parameters for uplink echo during uplink contacts.
     */
    @JvmName("xsabeirfalddnxgt")
    public suspend fun uplinkEchoConfig(`value`: Output) {
        this.uplinkEchoConfig = value
    }

    /**
     * @param value Provides information for an antenna downlink config object. Antenna downlink config objects are used to provide parameters for downlinks where no demodulation or decoding is performed by Ground Station (RF over IP downlinks).
     */
    @JvmName("osetegeosqooqpgw")
    public suspend fun antennaDownlinkConfig(`value`: ConfigAntennaDownlinkConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.antennaDownlinkConfig = mapped
    }

    /**
     * @param argument Provides information for an antenna downlink config object. Antenna downlink config objects are used to provide parameters for downlinks where no demodulation or decoding is performed by Ground Station (RF over IP downlinks).
     */
    @JvmName("qjkgokxuawndhqcj")
    public suspend fun antennaDownlinkConfig(argument: suspend ConfigAntennaDownlinkConfigArgsBuilder.() -> Unit) {
        val toBeMapped = ConfigAntennaDownlinkConfigArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.antennaDownlinkConfig = mapped
    }

    /**
     * @param value Provides information for a downlink demod decode config object. Downlink demod decode config objects are used to provide parameters for downlinks where the Ground Station service will demodulate and decode the downlinked data.
     */
    @JvmName("nkbvoylhjbxfkhsj")
    public suspend fun antennaDownlinkDemodDecodeConfig(`value`: ConfigAntennaDownlinkDemodDecodeConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.antennaDownlinkDemodDecodeConfig = mapped
    }

    /**
     * @param argument Provides information for a downlink demod decode config object. Downlink demod decode config objects are used to provide parameters for downlinks where the Ground Station service will demodulate and decode the downlinked data.
     */
    @JvmName("ggyrpmatuirlavta")
    public suspend fun antennaDownlinkDemodDecodeConfig(argument: suspend ConfigAntennaDownlinkDemodDecodeConfigArgsBuilder.() -> Unit) {
        val toBeMapped = ConfigAntennaDownlinkDemodDecodeConfigArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.antennaDownlinkDemodDecodeConfig = mapped
    }

    /**
     * @param value Provides information for an uplink config object. Uplink config objects are used to provide parameters for uplink contacts.
     */
    @JvmName("ipoerfeptajnowrl")
    public suspend fun antennaUplinkConfig(`value`: ConfigAntennaUplinkConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.antennaUplinkConfig = mapped
    }

    /**
     * @param argument Provides information for an uplink config object. Uplink config objects are used to provide parameters for uplink contacts.
     */
    @JvmName("ancmyjhkjnwlmtmb")
    public suspend fun antennaUplinkConfig(argument: suspend ConfigAntennaUplinkConfigArgsBuilder.() -> Unit) {
        val toBeMapped = ConfigAntennaUplinkConfigArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.antennaUplinkConfig = mapped
    }

    /**
     * @param value Provides information for a dataflow endpoint config object. Dataflow endpoint config objects are used to provide parameters about which IP endpoint(s) to use during a contact. Dataflow endpoints are where Ground Station sends data during a downlink contact and where Ground Station receives data to send to the satellite during an uplink contact.
     */
    @JvmName("milmsutjtidxdmrr")
    public suspend fun dataflowEndpointConfig(`value`: ConfigDataflowEndpointConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dataflowEndpointConfig = mapped
    }

    /**
     * @param argument Provides information for a dataflow endpoint config object. Dataflow endpoint config objects are used to provide parameters about which IP endpoint(s) to use during a contact. Dataflow endpoints are where Ground Station sends data during a downlink contact and where Ground Station receives data to send to the satellite during an uplink contact.
     */
    @JvmName("fderwwvialaaabya")
    public suspend fun dataflowEndpointConfig(argument: suspend ConfigDataflowEndpointConfigArgsBuilder.() -> Unit) {
        val toBeMapped = ConfigDataflowEndpointConfigArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.dataflowEndpointConfig = mapped
    }

    /**
     * @param value Provides information for an S3 recording config object. S3 recording config objects are used to provide parameters for S3 recording during downlink contacts.
     */
    @JvmName("tqjkbiuedmdrbjte")
    public suspend fun s3RecordingConfig(`value`: ConfigS3RecordingConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.s3RecordingConfig = mapped
    }

    /**
     * @param argument Provides information for an S3 recording config object. S3 recording config objects are used to provide parameters for S3 recording during downlink contacts.
     */
    @JvmName("scliiftwskltgyxl")
    public suspend fun s3RecordingConfig(argument: suspend ConfigS3RecordingConfigArgsBuilder.() -> Unit) {
        val toBeMapped = ConfigS3RecordingConfigArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.s3RecordingConfig = mapped
    }

    /**
     * @param value Provides information for a tracking config object. Tracking config objects are used to provide parameters about how to track the satellite through the sky during a contact.
     */
    @JvmName("qhevppcyhgxnbsmv")
    public suspend fun trackingConfig(`value`: ConfigTrackingConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.trackingConfig = mapped
    }

    /**
     * @param argument Provides information for a tracking config object. Tracking config objects are used to provide parameters about how to track the satellite through the sky during a contact.
     */
    @JvmName("koahwmbvrmlnobpw")
    public suspend fun trackingConfig(argument: suspend ConfigTrackingConfigArgsBuilder.() -> Unit) {
        val toBeMapped = ConfigTrackingConfigArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.trackingConfig = mapped
    }

    /**
     * @param value Provides information for an uplink echo config object. Uplink echo config objects are used to provide parameters for uplink echo during uplink contacts.
     */
    @JvmName("virhgnfmtjaycglb")
    public suspend fun uplinkEchoConfig(`value`: ConfigUplinkEchoConfigArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.uplinkEchoConfig = mapped
    }

    /**
     * @param argument Provides information for an uplink echo config object. Uplink echo config objects are used to provide parameters for uplink echo during uplink contacts.
     */
    @JvmName("pnkwaxmditovtbsh")
    public suspend fun uplinkEchoConfig(argument: suspend ConfigUplinkEchoConfigArgsBuilder.() -> Unit) {
        val toBeMapped = ConfigUplinkEchoConfigArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.uplinkEchoConfig = mapped
    }

    internal fun build(): ConfigDataArgs = ConfigDataArgs(
        antennaDownlinkConfig = antennaDownlinkConfig,
        antennaDownlinkDemodDecodeConfig = antennaDownlinkDemodDecodeConfig,
        antennaUplinkConfig = antennaUplinkConfig,
        dataflowEndpointConfig = dataflowEndpointConfig,
        s3RecordingConfig = s3RecordingConfig,
        trackingConfig = trackingConfig,
        uplinkEchoConfig = uplinkEchoConfig,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy