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

com.pulumi.azure.monitoring.kotlin.inputs.DataCollectionRuleDataSourcesArgs.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: 6.15.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.monitoring.kotlin.inputs

import com.pulumi.azure.monitoring.inputs.DataCollectionRuleDataSourcesArgs.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.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property dataImport A `data_import` block as defined above.
 * @property extensions One or more `extension` blocks as defined below.
 * @property iisLogs One or more `iis_log` blocks as defined below.
 * @property logFiles One or more `log_file` blocks as defined below.
 * @property performanceCounters One or more `performance_counter` blocks as defined below.
 * @property platformTelemetries One or more `platform_telemetry` blocks as defined below.
 * @property prometheusForwarders One or more `prometheus_forwarder` blocks as defined below.
 * @property syslogs One or more `syslog` blocks as defined below.
 * @property windowsEventLogs One or more `windows_event_log` blocks as defined below.
 * @property windowsFirewallLogs One or more `windows_firewall_log` blocks as defined below.
 */
public data class DataCollectionRuleDataSourcesArgs(
    public val dataImport: Output? = null,
    public val extensions: Output>? = null,
    public val iisLogs: Output>? = null,
    public val logFiles: Output>? = null,
    public val performanceCounters: Output>? =
        null,
    public val platformTelemetries: Output>? =
        null,
    public val prometheusForwarders: Output>? = null,
    public val syslogs: Output>? = null,
    public val windowsEventLogs: Output>? =
        null,
    public val windowsFirewallLogs: Output>? =
        null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.monitoring.inputs.DataCollectionRuleDataSourcesArgs =
        com.pulumi.azure.monitoring.inputs.DataCollectionRuleDataSourcesArgs.builder()
            .dataImport(dataImport?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .extensions(
                extensions?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .iisLogs(
                iisLogs?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .logFiles(
                logFiles?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .performanceCounters(
                performanceCounters?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .platformTelemetries(
                platformTelemetries?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .prometheusForwarders(
                prometheusForwarders?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .syslogs(
                syslogs?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .windowsEventLogs(
                windowsEventLogs?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .windowsFirewallLogs(
                windowsFirewallLogs?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            ).build()
}

/**
 * Builder for [DataCollectionRuleDataSourcesArgs].
 */
@PulumiTagMarker
public class DataCollectionRuleDataSourcesArgsBuilder internal constructor() {
    private var dataImport: Output? = null

    private var extensions: Output>? = null

    private var iisLogs: Output>? = null

    private var logFiles: Output>? = null

    private var performanceCounters:
        Output>? = null

    private var platformTelemetries: Output>? =
        null

    private var prometheusForwarders:
        Output>? = null

    private var syslogs: Output>? = null

    private var windowsEventLogs: Output>? =
        null

    private var windowsFirewallLogs:
        Output>? = null

    /**
     * @param value A `data_import` block as defined above.
     */
    @JvmName("xopwndfxwkfyvysn")
    public suspend fun dataImport(`value`: Output) {
        this.dataImport = value
    }

    /**
     * @param value One or more `extension` blocks as defined below.
     */
    @JvmName("qrvaaprsxgyaygrp")
    public suspend fun extensions(`value`: Output>) {
        this.extensions = value
    }

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

    /**
     * @param values One or more `extension` blocks as defined below.
     */
    @JvmName("jjmxrchgbaqcirsx")
    public suspend fun extensions(values: List>) {
        this.extensions = Output.all(values)
    }

    /**
     * @param value One or more `iis_log` blocks as defined below.
     */
    @JvmName("eqcgaobxovxnncue")
    public suspend fun iisLogs(`value`: Output>) {
        this.iisLogs = value
    }

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

    /**
     * @param values One or more `iis_log` blocks as defined below.
     */
    @JvmName("kaibkikmqsvlyakm")
    public suspend fun iisLogs(values: List>) {
        this.iisLogs = Output.all(values)
    }

    /**
     * @param value One or more `log_file` blocks as defined below.
     */
    @JvmName("pvpkttdrmkilftsx")
    public suspend fun logFiles(`value`: Output>) {
        this.logFiles = value
    }

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

    /**
     * @param values One or more `log_file` blocks as defined below.
     */
    @JvmName("ybkjfmkvvcfxnqne")
    public suspend fun logFiles(values: List>) {
        this.logFiles = Output.all(values)
    }

    /**
     * @param value One or more `performance_counter` blocks as defined below.
     */
    @JvmName("mxmtkfvuaocejiee")
    public suspend fun performanceCounters(`value`: Output>) {
        this.performanceCounters = value
    }

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

    /**
     * @param values One or more `performance_counter` blocks as defined below.
     */
    @JvmName("mmtxyjjuywhdljdd")
    public suspend fun performanceCounters(values: List>) {
        this.performanceCounters = Output.all(values)
    }

    /**
     * @param value One or more `platform_telemetry` blocks as defined below.
     */
    @JvmName("emgmsjcnyoueyeve")
    public suspend fun platformTelemetries(`value`: Output>) {
        this.platformTelemetries = value
    }

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

    /**
     * @param values One or more `platform_telemetry` blocks as defined below.
     */
    @JvmName("savyhwyfnpqhobwd")
    public suspend fun platformTelemetries(values: List>) {
        this.platformTelemetries = Output.all(values)
    }

    /**
     * @param value One or more `prometheus_forwarder` blocks as defined below.
     */
    @JvmName("dlwqdiyjhobpanft")
    public suspend fun prometheusForwarders(`value`: Output>) {
        this.prometheusForwarders = value
    }

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

    /**
     * @param values One or more `prometheus_forwarder` blocks as defined below.
     */
    @JvmName("matmvhksmnndjeob")
    public suspend fun prometheusForwarders(values: List>) {
        this.prometheusForwarders = Output.all(values)
    }

    /**
     * @param value One or more `syslog` blocks as defined below.
     */
    @JvmName("fjnkiifykutcvmtq")
    public suspend fun syslogs(`value`: Output>) {
        this.syslogs = value
    }

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

    /**
     * @param values One or more `syslog` blocks as defined below.
     */
    @JvmName("hppchuiqemqgpquk")
    public suspend fun syslogs(values: List>) {
        this.syslogs = Output.all(values)
    }

    /**
     * @param value One or more `windows_event_log` blocks as defined below.
     */
    @JvmName("oectmrxeyfwanbiu")
    public suspend fun windowsEventLogs(`value`: Output>) {
        this.windowsEventLogs = value
    }

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

    /**
     * @param values One or more `windows_event_log` blocks as defined below.
     */
    @JvmName("ckdqajvhtjmxevsb")
    public suspend fun windowsEventLogs(values: List>) {
        this.windowsEventLogs = Output.all(values)
    }

    /**
     * @param value One or more `windows_firewall_log` blocks as defined below.
     */
    @JvmName("oqlbvesebuqaxtjt")
    public suspend fun windowsFirewallLogs(`value`: Output>) {
        this.windowsFirewallLogs = value
    }

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

    /**
     * @param values One or more `windows_firewall_log` blocks as defined below.
     */
    @JvmName("ibgwsxxshnhypmms")
    public suspend fun windowsFirewallLogs(values: List>) {
        this.windowsFirewallLogs = Output.all(values)
    }

    /**
     * @param value A `data_import` block as defined above.
     */
    @JvmName("tviurvsrvpuxegun")
    public suspend fun dataImport(`value`: DataCollectionRuleDataSourcesDataImportArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dataImport = mapped
    }

    /**
     * @param argument A `data_import` block as defined above.
     */
    @JvmName("jdbhueusldgpqdlj")
    public suspend fun dataImport(argument: suspend DataCollectionRuleDataSourcesDataImportArgsBuilder.() -> Unit) {
        val toBeMapped = DataCollectionRuleDataSourcesDataImportArgsBuilder().applySuspend {
            argument()
        }.build()
        val mapped = of(toBeMapped)
        this.dataImport = mapped
    }

    /**
     * @param value One or more `extension` blocks as defined below.
     */
    @JvmName("qxcjieyytrtaguks")
    public suspend fun extensions(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.extensions = mapped
    }

    /**
     * @param argument One or more `extension` blocks as defined below.
     */
    @JvmName("sccvxtcyjilklloq")
    public suspend fun extensions(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesExtensionArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.extensions = mapped
    }

    /**
     * @param argument One or more `extension` blocks as defined below.
     */
    @JvmName("rfanqancxfdjluqm")
    public suspend fun extensions(vararg argument: suspend DataCollectionRuleDataSourcesExtensionArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesExtensionArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.extensions = mapped
    }

    /**
     * @param argument One or more `extension` blocks as defined below.
     */
    @JvmName("lbtbiaifamxmdkhi")
    public suspend fun extensions(argument: suspend DataCollectionRuleDataSourcesExtensionArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            DataCollectionRuleDataSourcesExtensionArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.extensions = mapped
    }

    /**
     * @param values One or more `extension` blocks as defined below.
     */
    @JvmName("waywumuhtiwbaqhg")
    public suspend fun extensions(vararg values: DataCollectionRuleDataSourcesExtensionArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.extensions = mapped
    }

    /**
     * @param value One or more `iis_log` blocks as defined below.
     */
    @JvmName("xlnkfdscwgjsxirv")
    public suspend fun iisLogs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.iisLogs = mapped
    }

    /**
     * @param argument One or more `iis_log` blocks as defined below.
     */
    @JvmName("wbtpqwqyqoxljwcw")
    public suspend fun iisLogs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesIisLogArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.iisLogs = mapped
    }

    /**
     * @param argument One or more `iis_log` blocks as defined below.
     */
    @JvmName("jfdbbfgpdracflgi")
    public suspend fun iisLogs(vararg argument: suspend DataCollectionRuleDataSourcesIisLogArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesIisLogArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.iisLogs = mapped
    }

    /**
     * @param argument One or more `iis_log` blocks as defined below.
     */
    @JvmName("rqomtopjiwdtgsjd")
    public suspend fun iisLogs(argument: suspend DataCollectionRuleDataSourcesIisLogArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            DataCollectionRuleDataSourcesIisLogArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.iisLogs = mapped
    }

    /**
     * @param values One or more `iis_log` blocks as defined below.
     */
    @JvmName("nyivnefqambdctmk")
    public suspend fun iisLogs(vararg values: DataCollectionRuleDataSourcesIisLogArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.iisLogs = mapped
    }

    /**
     * @param value One or more `log_file` blocks as defined below.
     */
    @JvmName("fijoosohqumovgjb")
    public suspend fun logFiles(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.logFiles = mapped
    }

    /**
     * @param argument One or more `log_file` blocks as defined below.
     */
    @JvmName("yruwofblglbtsioq")
    public suspend fun logFiles(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesLogFileArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.logFiles = mapped
    }

    /**
     * @param argument One or more `log_file` blocks as defined below.
     */
    @JvmName("rcxeolgkwtnoklmo")
    public suspend fun logFiles(vararg argument: suspend DataCollectionRuleDataSourcesLogFileArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesLogFileArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.logFiles = mapped
    }

    /**
     * @param argument One or more `log_file` blocks as defined below.
     */
    @JvmName("knnxdgwwmahamlxi")
    public suspend fun logFiles(argument: suspend DataCollectionRuleDataSourcesLogFileArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            DataCollectionRuleDataSourcesLogFileArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.logFiles = mapped
    }

    /**
     * @param values One or more `log_file` blocks as defined below.
     */
    @JvmName("ktevqnadphfbeuby")
    public suspend fun logFiles(vararg values: DataCollectionRuleDataSourcesLogFileArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.logFiles = mapped
    }

    /**
     * @param value One or more `performance_counter` blocks as defined below.
     */
    @JvmName("dsrrlnoxvegqegie")
    public suspend fun performanceCounters(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.performanceCounters = mapped
    }

    /**
     * @param argument One or more `performance_counter` blocks as defined below.
     */
    @JvmName("kraqqfriaoctdtkj")
    public suspend fun performanceCounters(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesPerformanceCounterArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.performanceCounters = mapped
    }

    /**
     * @param argument One or more `performance_counter` blocks as defined below.
     */
    @JvmName("xphikxueyqijdqwr")
    public suspend fun performanceCounters(vararg argument: suspend DataCollectionRuleDataSourcesPerformanceCounterArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesPerformanceCounterArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.performanceCounters = mapped
    }

    /**
     * @param argument One or more `performance_counter` blocks as defined below.
     */
    @JvmName("hachvnrnuoeeijpt")
    public suspend fun performanceCounters(argument: suspend DataCollectionRuleDataSourcesPerformanceCounterArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                DataCollectionRuleDataSourcesPerformanceCounterArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.performanceCounters = mapped
    }

    /**
     * @param values One or more `performance_counter` blocks as defined below.
     */
    @JvmName("uldlpjkbqceucupm")
    public suspend fun performanceCounters(vararg values: DataCollectionRuleDataSourcesPerformanceCounterArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.performanceCounters = mapped
    }

    /**
     * @param value One or more `platform_telemetry` blocks as defined below.
     */
    @JvmName("sgxdbvolsdwuvskn")
    public suspend fun platformTelemetries(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.platformTelemetries = mapped
    }

    /**
     * @param argument One or more `platform_telemetry` blocks as defined below.
     */
    @JvmName("pmovwyfxisvukris")
    public suspend fun platformTelemetries(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesPlatformTelemetryArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.platformTelemetries = mapped
    }

    /**
     * @param argument One or more `platform_telemetry` blocks as defined below.
     */
    @JvmName("tfkbmskdatdpwaxs")
    public suspend fun platformTelemetries(vararg argument: suspend DataCollectionRuleDataSourcesPlatformTelemetryArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesPlatformTelemetryArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.platformTelemetries = mapped
    }

    /**
     * @param argument One or more `platform_telemetry` blocks as defined below.
     */
    @JvmName("nyunpamgwfxwrokw")
    public suspend fun platformTelemetries(argument: suspend DataCollectionRuleDataSourcesPlatformTelemetryArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            DataCollectionRuleDataSourcesPlatformTelemetryArgsBuilder().applySuspend
                { argument() }.build(),
        )
        val mapped = of(toBeMapped)
        this.platformTelemetries = mapped
    }

    /**
     * @param values One or more `platform_telemetry` blocks as defined below.
     */
    @JvmName("ojhwghcqlqndwoqr")
    public suspend fun platformTelemetries(vararg values: DataCollectionRuleDataSourcesPlatformTelemetryArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.platformTelemetries = mapped
    }

    /**
     * @param value One or more `prometheus_forwarder` blocks as defined below.
     */
    @JvmName("eaxgqjivxbmqxfsk")
    public suspend fun prometheusForwarders(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.prometheusForwarders = mapped
    }

    /**
     * @param argument One or more `prometheus_forwarder` blocks as defined below.
     */
    @JvmName("otwvohpsvefqhdqh")
    public suspend fun prometheusForwarders(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesPrometheusForwarderArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.prometheusForwarders = mapped
    }

    /**
     * @param argument One or more `prometheus_forwarder` blocks as defined below.
     */
    @JvmName("pfgiiaakklxickhm")
    public suspend fun prometheusForwarders(vararg argument: suspend DataCollectionRuleDataSourcesPrometheusForwarderArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesPrometheusForwarderArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.prometheusForwarders = mapped
    }

    /**
     * @param argument One or more `prometheus_forwarder` blocks as defined below.
     */
    @JvmName("npqkgnwqprhrjjtg")
    public suspend fun prometheusForwarders(argument: suspend DataCollectionRuleDataSourcesPrometheusForwarderArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                DataCollectionRuleDataSourcesPrometheusForwarderArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.prometheusForwarders = mapped
    }

    /**
     * @param values One or more `prometheus_forwarder` blocks as defined below.
     */
    @JvmName("jrjcvilhhyeuxfuf")
    public suspend fun prometheusForwarders(vararg values: DataCollectionRuleDataSourcesPrometheusForwarderArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.prometheusForwarders = mapped
    }

    /**
     * @param value One or more `syslog` blocks as defined below.
     */
    @JvmName("rwhnasogvbtsrjll")
    public suspend fun syslogs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.syslogs = mapped
    }

    /**
     * @param argument One or more `syslog` blocks as defined below.
     */
    @JvmName("ltouffwtnhtedqio")
    public suspend fun syslogs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesSyslogArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.syslogs = mapped
    }

    /**
     * @param argument One or more `syslog` blocks as defined below.
     */
    @JvmName("ylreebkphupxnpwy")
    public suspend fun syslogs(vararg argument: suspend DataCollectionRuleDataSourcesSyslogArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesSyslogArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.syslogs = mapped
    }

    /**
     * @param argument One or more `syslog` blocks as defined below.
     */
    @JvmName("tnarqhbrccmgkcjf")
    public suspend fun syslogs(argument: suspend DataCollectionRuleDataSourcesSyslogArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            DataCollectionRuleDataSourcesSyslogArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.syslogs = mapped
    }

    /**
     * @param values One or more `syslog` blocks as defined below.
     */
    @JvmName("gwalelsydsesvcty")
    public suspend fun syslogs(vararg values: DataCollectionRuleDataSourcesSyslogArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.syslogs = mapped
    }

    /**
     * @param value One or more `windows_event_log` blocks as defined below.
     */
    @JvmName("olgilqmcbctlbbky")
    public suspend fun windowsEventLogs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.windowsEventLogs = mapped
    }

    /**
     * @param argument One or more `windows_event_log` blocks as defined below.
     */
    @JvmName("oyqwxhouhoxqejon")
    public suspend fun windowsEventLogs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesWindowsEventLogArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.windowsEventLogs = mapped
    }

    /**
     * @param argument One or more `windows_event_log` blocks as defined below.
     */
    @JvmName("rjigcgcqsibabjlv")
    public suspend fun windowsEventLogs(vararg argument: suspend DataCollectionRuleDataSourcesWindowsEventLogArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesWindowsEventLogArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.windowsEventLogs = mapped
    }

    /**
     * @param argument One or more `windows_event_log` blocks as defined below.
     */
    @JvmName("vhesjgbeenlnwywk")
    public suspend fun windowsEventLogs(argument: suspend DataCollectionRuleDataSourcesWindowsEventLogArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            DataCollectionRuleDataSourcesWindowsEventLogArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.windowsEventLogs = mapped
    }

    /**
     * @param values One or more `windows_event_log` blocks as defined below.
     */
    @JvmName("nfowtqmxkjhjesix")
    public suspend fun windowsEventLogs(vararg values: DataCollectionRuleDataSourcesWindowsEventLogArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.windowsEventLogs = mapped
    }

    /**
     * @param value One or more `windows_firewall_log` blocks as defined below.
     */
    @JvmName("uvtrqjlltkalopbv")
    public suspend fun windowsFirewallLogs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.windowsFirewallLogs = mapped
    }

    /**
     * @param argument One or more `windows_firewall_log` blocks as defined below.
     */
    @JvmName("ihfplbcwitvxnkch")
    public suspend fun windowsFirewallLogs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesWindowsFirewallLogArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.windowsFirewallLogs = mapped
    }

    /**
     * @param argument One or more `windows_firewall_log` blocks as defined below.
     */
    @JvmName("ldxtrqkjghoidibs")
    public suspend fun windowsFirewallLogs(vararg argument: suspend DataCollectionRuleDataSourcesWindowsFirewallLogArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            DataCollectionRuleDataSourcesWindowsFirewallLogArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.windowsFirewallLogs = mapped
    }

    /**
     * @param argument One or more `windows_firewall_log` blocks as defined below.
     */
    @JvmName("msqeafqcfbsxvxwq")
    public suspend fun windowsFirewallLogs(argument: suspend DataCollectionRuleDataSourcesWindowsFirewallLogArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                DataCollectionRuleDataSourcesWindowsFirewallLogArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.windowsFirewallLogs = mapped
    }

    /**
     * @param values One or more `windows_firewall_log` blocks as defined below.
     */
    @JvmName("tgvvsyqlejinbyvw")
    public suspend fun windowsFirewallLogs(vararg values: DataCollectionRuleDataSourcesWindowsFirewallLogArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.windowsFirewallLogs = mapped
    }

    internal fun build(): DataCollectionRuleDataSourcesArgs = DataCollectionRuleDataSourcesArgs(
        dataImport = dataImport,
        extensions = extensions,
        iisLogs = iisLogs,
        logFiles = logFiles,
        performanceCounters = performanceCounters,
        platformTelemetries = platformTelemetries,
        prometheusForwarders = prometheusForwarders,
        syslogs = syslogs,
        windowsEventLogs = windowsEventLogs,
        windowsFirewallLogs = windowsFirewallLogs,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy