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

com.pulumi.azurenative.insights.kotlin.inputs.DataCollectionRuleDataSourcesArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.insights.kotlin.inputs

import com.pulumi.azurenative.insights.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

/**
 * The specification of data sources.
 * This property is optional and can be omitted if the rule is meant to be used via direct calls to the provisioned endpoint.
 * @property dataImports Specifications of pull based data sources
 * @property extensions The list of Azure VM extension data source configurations.
 * @property iisLogs The list of IIS logs source configurations.
 * @property logFiles The list of Log files source configurations.
 * @property performanceCounters The list of performance counter data source configurations.
 * @property platformTelemetry The list of platform telemetry configurations
 * @property prometheusForwarder The list of Prometheus forwarder data source configurations.
 * @property syslog The list of Syslog data source configurations.
 * @property windowsEventLogs The list of Windows Event Log data source configurations.
 * @property windowsFirewallLogs The list of Windows Firewall logs source configurations.
 */
public data class DataCollectionRuleDataSourcesArgs(
    public val dataImports: Output? = null,
    public val extensions: Output>? = null,
    public val iisLogs: Output>? = null,
    public val logFiles: Output>? = null,
    public val performanceCounters: Output>? = null,
    public val platformTelemetry: Output>? = null,
    public val prometheusForwarder: Output>? = null,
    public val syslog: Output>? = null,
    public val windowsEventLogs: Output>? = null,
    public val windowsFirewallLogs: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.insights.inputs.DataCollectionRuleDataSourcesArgs =
        com.pulumi.azurenative.insights.inputs.DataCollectionRuleDataSourcesArgs.builder()
            .dataImports(dataImports?.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() })
                    })
                }),
            )
            .platformTelemetry(
                platformTelemetry?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .prometheusForwarder(
                prometheusForwarder?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .syslog(syslog?.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 dataImports: Output? = null

    private var extensions: Output>? = null

    private var iisLogs: Output>? = null

    private var logFiles: Output>? = null

    private var performanceCounters: Output>? = null

    private var platformTelemetry: Output>? = null

    private var prometheusForwarder: Output>? = null

    private var syslog: Output>? = null

    private var windowsEventLogs: Output>? = null

    private var windowsFirewallLogs: Output>? = null

    /**
     * @param value Specifications of pull based data sources
     */
    @JvmName("rexnovslkvfaddim")
    public suspend fun dataImports(`value`: Output) {
        this.dataImports = value
    }

    /**
     * @param value The list of Azure VM extension data source configurations.
     */
    @JvmName("dwucjlxcjcbylcwv")
    public suspend fun extensions(`value`: Output>) {
        this.extensions = value
    }

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

    /**
     * @param values The list of Azure VM extension data source configurations.
     */
    @JvmName("vpneycuqaplbwpyq")
    public suspend fun extensions(values: List>) {
        this.extensions = Output.all(values)
    }

    /**
     * @param value The list of IIS logs source configurations.
     */
    @JvmName("knqenokeacsdrxan")
    public suspend fun iisLogs(`value`: Output>) {
        this.iisLogs = value
    }

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

    /**
     * @param values The list of IIS logs source configurations.
     */
    @JvmName("qlgaecxgetwlvjsn")
    public suspend fun iisLogs(values: List>) {
        this.iisLogs = Output.all(values)
    }

    /**
     * @param value The list of Log files source configurations.
     */
    @JvmName("hdnqewoqnmjbwkal")
    public suspend fun logFiles(`value`: Output>) {
        this.logFiles = value
    }

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

    /**
     * @param values The list of Log files source configurations.
     */
    @JvmName("rdsjjowtkfubhnqb")
    public suspend fun logFiles(values: List>) {
        this.logFiles = Output.all(values)
    }

    /**
     * @param value The list of performance counter data source configurations.
     */
    @JvmName("wsfhuuhngjrxfkal")
    public suspend fun performanceCounters(`value`: Output>) {
        this.performanceCounters = value
    }

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

    /**
     * @param values The list of performance counter data source configurations.
     */
    @JvmName("oamaghqtabiuagmh")
    public suspend fun performanceCounters(values: List>) {
        this.performanceCounters = Output.all(values)
    }

    /**
     * @param value The list of platform telemetry configurations
     */
    @JvmName("lttclpmaxvbgvoxg")
    public suspend fun platformTelemetry(`value`: Output>) {
        this.platformTelemetry = value
    }

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

    /**
     * @param values The list of platform telemetry configurations
     */
    @JvmName("xrfodksyikukhuvu")
    public suspend fun platformTelemetry(values: List>) {
        this.platformTelemetry = Output.all(values)
    }

    /**
     * @param value The list of Prometheus forwarder data source configurations.
     */
    @JvmName("omsfnskqunqxrcpb")
    public suspend fun prometheusForwarder(`value`: Output>) {
        this.prometheusForwarder = value
    }

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

    /**
     * @param values The list of Prometheus forwarder data source configurations.
     */
    @JvmName("wmplyljjkfpbulct")
    public suspend fun prometheusForwarder(values: List>) {
        this.prometheusForwarder = Output.all(values)
    }

    /**
     * @param value The list of Syslog data source configurations.
     */
    @JvmName("vmffyiqxdljhuulf")
    public suspend fun syslog(`value`: Output>) {
        this.syslog = value
    }

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

    /**
     * @param values The list of Syslog data source configurations.
     */
    @JvmName("rukxfefotdqtuhhb")
    public suspend fun syslog(values: List>) {
        this.syslog = Output.all(values)
    }

    /**
     * @param value The list of Windows Event Log data source configurations.
     */
    @JvmName("guqhdsxgojqyfkar")
    public suspend fun windowsEventLogs(`value`: Output>) {
        this.windowsEventLogs = value
    }

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

    /**
     * @param values The list of Windows Event Log data source configurations.
     */
    @JvmName("xdamgcqopfhsauoh")
    public suspend fun windowsEventLogs(values: List>) {
        this.windowsEventLogs = Output.all(values)
    }

    /**
     * @param value The list of Windows Firewall logs source configurations.
     */
    @JvmName("qgrpwuoeobluplew")
    public suspend fun windowsFirewallLogs(`value`: Output>) {
        this.windowsFirewallLogs = value
    }

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

    /**
     * @param values The list of Windows Firewall logs source configurations.
     */
    @JvmName("nudkpvmghqjymksr")
    public suspend fun windowsFirewallLogs(values: List>) {
        this.windowsFirewallLogs = Output.all(values)
    }

    /**
     * @param value Specifications of pull based data sources
     */
    @JvmName("jgxikaqfewehiwxw")
    public suspend fun dataImports(`value`: DataSourcesSpecDataImportsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dataImports = mapped
    }

    /**
     * @param argument Specifications of pull based data sources
     */
    @JvmName("apbrypgxdnciwpud")
    public suspend fun dataImports(argument: suspend DataSourcesSpecDataImportsArgsBuilder.() -> Unit) {
        val toBeMapped = DataSourcesSpecDataImportsArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.dataImports = mapped
    }

    /**
     * @param value The list of Azure VM extension data source configurations.
     */
    @JvmName("jsbtvesgbqwlnvak")
    public suspend fun extensions(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.extensions = mapped
    }

    /**
     * @param argument The list of Azure VM extension data source configurations.
     */
    @JvmName("dgtjjdclnsfhoolu")
    public suspend fun extensions(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            ExtensionDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.extensions = mapped
    }

    /**
     * @param argument The list of Azure VM extension data source configurations.
     */
    @JvmName("jexikghpoqyhsmdd")
    public suspend fun extensions(vararg argument: suspend ExtensionDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            ExtensionDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.extensions = mapped
    }

    /**
     * @param argument The list of Azure VM extension data source configurations.
     */
    @JvmName("japfyyilgieeaimp")
    public suspend fun extensions(argument: suspend ExtensionDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(ExtensionDataSourceArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.extensions = mapped
    }

    /**
     * @param values The list of Azure VM extension data source configurations.
     */
    @JvmName("jgqoabnwihynbhjr")
    public suspend fun extensions(vararg values: ExtensionDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.extensions = mapped
    }

    /**
     * @param value The list of IIS logs source configurations.
     */
    @JvmName("jtprajyabsryihrh")
    public suspend fun iisLogs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.iisLogs = mapped
    }

    /**
     * @param argument The list of IIS logs source configurations.
     */
    @JvmName("jobdmolpmwtlqoke")
    public suspend fun iisLogs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            IisLogsDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.iisLogs = mapped
    }

    /**
     * @param argument The list of IIS logs source configurations.
     */
    @JvmName("agvcskwvudcoapsw")
    public suspend fun iisLogs(vararg argument: suspend IisLogsDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            IisLogsDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.iisLogs = mapped
    }

    /**
     * @param argument The list of IIS logs source configurations.
     */
    @JvmName("lpmbiojahjnlnmmf")
    public suspend fun iisLogs(argument: suspend IisLogsDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(IisLogsDataSourceArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.iisLogs = mapped
    }

    /**
     * @param values The list of IIS logs source configurations.
     */
    @JvmName("mwdpfldpwprvshlw")
    public suspend fun iisLogs(vararg values: IisLogsDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.iisLogs = mapped
    }

    /**
     * @param value The list of Log files source configurations.
     */
    @JvmName("ivwpmeihmyqbujdx")
    public suspend fun logFiles(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.logFiles = mapped
    }

    /**
     * @param argument The list of Log files source configurations.
     */
    @JvmName("mxtuhlwuldgdpabo")
    public suspend fun logFiles(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            LogFilesDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.logFiles = mapped
    }

    /**
     * @param argument The list of Log files source configurations.
     */
    @JvmName("kdegjkpugbxxvwue")
    public suspend fun logFiles(vararg argument: suspend LogFilesDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            LogFilesDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.logFiles = mapped
    }

    /**
     * @param argument The list of Log files source configurations.
     */
    @JvmName("cpeubyidjjnpqgfs")
    public suspend fun logFiles(argument: suspend LogFilesDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(LogFilesDataSourceArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.logFiles = mapped
    }

    /**
     * @param values The list of Log files source configurations.
     */
    @JvmName("utqggbciovnkhiun")
    public suspend fun logFiles(vararg values: LogFilesDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.logFiles = mapped
    }

    /**
     * @param value The list of performance counter data source configurations.
     */
    @JvmName("ypnqaokrjgdlcimy")
    public suspend fun performanceCounters(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.performanceCounters = mapped
    }

    /**
     * @param argument The list of performance counter data source configurations.
     */
    @JvmName("eqtnkeuyowbydele")
    public suspend fun performanceCounters(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            PerfCounterDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.performanceCounters = mapped
    }

    /**
     * @param argument The list of performance counter data source configurations.
     */
    @JvmName("cjbdtvtdocnejfjd")
    public suspend fun performanceCounters(vararg argument: suspend PerfCounterDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            PerfCounterDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.performanceCounters = mapped
    }

    /**
     * @param argument The list of performance counter data source configurations.
     */
    @JvmName("gpdmiyhqprdbupsj")
    public suspend fun performanceCounters(argument: suspend PerfCounterDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(PerfCounterDataSourceArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.performanceCounters = mapped
    }

    /**
     * @param values The list of performance counter data source configurations.
     */
    @JvmName("oagupqkntghhynce")
    public suspend fun performanceCounters(vararg values: PerfCounterDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.performanceCounters = mapped
    }

    /**
     * @param value The list of platform telemetry configurations
     */
    @JvmName("cskivdgnrruiqowu")
    public suspend fun platformTelemetry(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.platformTelemetry = mapped
    }

    /**
     * @param argument The list of platform telemetry configurations
     */
    @JvmName("eagubapqkyuuecrt")
    public suspend fun platformTelemetry(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            PlatformTelemetryDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.platformTelemetry = mapped
    }

    /**
     * @param argument The list of platform telemetry configurations
     */
    @JvmName("tnrpnhlcnqqfkott")
    public suspend fun platformTelemetry(vararg argument: suspend PlatformTelemetryDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            PlatformTelemetryDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.platformTelemetry = mapped
    }

    /**
     * @param argument The list of platform telemetry configurations
     */
    @JvmName("ipyscwdhfopnauho")
    public suspend fun platformTelemetry(argument: suspend PlatformTelemetryDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            PlatformTelemetryDataSourceArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.platformTelemetry = mapped
    }

    /**
     * @param values The list of platform telemetry configurations
     */
    @JvmName("uohvvppdcpxhtxlu")
    public suspend fun platformTelemetry(vararg values: PlatformTelemetryDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.platformTelemetry = mapped
    }

    /**
     * @param value The list of Prometheus forwarder data source configurations.
     */
    @JvmName("bikwhmyuyxplsmwv")
    public suspend fun prometheusForwarder(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.prometheusForwarder = mapped
    }

    /**
     * @param argument The list of Prometheus forwarder data source configurations.
     */
    @JvmName("pndhjamepshhomme")
    public suspend fun prometheusForwarder(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            PrometheusForwarderDataSourceArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.prometheusForwarder = mapped
    }

    /**
     * @param argument The list of Prometheus forwarder data source configurations.
     */
    @JvmName("bnismvvmqkcimqcy")
    public suspend fun prometheusForwarder(vararg argument: suspend PrometheusForwarderDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            PrometheusForwarderDataSourceArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.prometheusForwarder = mapped
    }

    /**
     * @param argument The list of Prometheus forwarder data source configurations.
     */
    @JvmName("frbnishrsmgnwerv")
    public suspend fun prometheusForwarder(argument: suspend PrometheusForwarderDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            PrometheusForwarderDataSourceArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.prometheusForwarder = mapped
    }

    /**
     * @param values The list of Prometheus forwarder data source configurations.
     */
    @JvmName("vkacqdwocojmxyso")
    public suspend fun prometheusForwarder(vararg values: PrometheusForwarderDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.prometheusForwarder = mapped
    }

    /**
     * @param value The list of Syslog data source configurations.
     */
    @JvmName("hqowslhmgxrboixi")
    public suspend fun syslog(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.syslog = mapped
    }

    /**
     * @param argument The list of Syslog data source configurations.
     */
    @JvmName("efjvffvxlgjnyxsc")
    public suspend fun syslog(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            SyslogDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.syslog = mapped
    }

    /**
     * @param argument The list of Syslog data source configurations.
     */
    @JvmName("gshjdserbxlrqtte")
    public suspend fun syslog(vararg argument: suspend SyslogDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            SyslogDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.syslog = mapped
    }

    /**
     * @param argument The list of Syslog data source configurations.
     */
    @JvmName("wsrbjxqutpumgxfv")
    public suspend fun syslog(argument: suspend SyslogDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(SyslogDataSourceArgsBuilder().applySuspend { argument() }.build())
        val mapped = of(toBeMapped)
        this.syslog = mapped
    }

    /**
     * @param values The list of Syslog data source configurations.
     */
    @JvmName("oofitjidcvccgrsw")
    public suspend fun syslog(vararg values: SyslogDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.syslog = mapped
    }

    /**
     * @param value The list of Windows Event Log data source configurations.
     */
    @JvmName("lvsuferfpfamessl")
    public suspend fun windowsEventLogs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.windowsEventLogs = mapped
    }

    /**
     * @param argument The list of Windows Event Log data source configurations.
     */
    @JvmName("jyrtceherducpswr")
    public suspend fun windowsEventLogs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            WindowsEventLogDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.windowsEventLogs = mapped
    }

    /**
     * @param argument The list of Windows Event Log data source configurations.
     */
    @JvmName("obrrkthtnqdrsmqv")
    public suspend fun windowsEventLogs(vararg argument: suspend WindowsEventLogDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            WindowsEventLogDataSourceArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.windowsEventLogs = mapped
    }

    /**
     * @param argument The list of Windows Event Log data source configurations.
     */
    @JvmName("riapfkckbnhvkkia")
    public suspend fun windowsEventLogs(argument: suspend WindowsEventLogDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            WindowsEventLogDataSourceArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.windowsEventLogs = mapped
    }

    /**
     * @param values The list of Windows Event Log data source configurations.
     */
    @JvmName("wmpgtkccobpdmpgv")
    public suspend fun windowsEventLogs(vararg values: WindowsEventLogDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.windowsEventLogs = mapped
    }

    /**
     * @param value The list of Windows Firewall logs source configurations.
     */
    @JvmName("vjbejhjxiaovnwdg")
    public suspend fun windowsFirewallLogs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.windowsFirewallLogs = mapped
    }

    /**
     * @param argument The list of Windows Firewall logs source configurations.
     */
    @JvmName("pyouykvvoedhqkww")
    public suspend fun windowsFirewallLogs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            WindowsFirewallLogsDataSourceArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.windowsFirewallLogs = mapped
    }

    /**
     * @param argument The list of Windows Firewall logs source configurations.
     */
    @JvmName("aodxowdiamecpwpx")
    public suspend fun windowsFirewallLogs(vararg argument: suspend WindowsFirewallLogsDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            WindowsFirewallLogsDataSourceArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.windowsFirewallLogs = mapped
    }

    /**
     * @param argument The list of Windows Firewall logs source configurations.
     */
    @JvmName("grbqkvsvhjkilsux")
    public suspend fun windowsFirewallLogs(argument: suspend WindowsFirewallLogsDataSourceArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            WindowsFirewallLogsDataSourceArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.windowsFirewallLogs = mapped
    }

    /**
     * @param values The list of Windows Firewall logs source configurations.
     */
    @JvmName("hdckqnmpmvxyxsqu")
    public suspend fun windowsFirewallLogs(vararg values: WindowsFirewallLogsDataSourceArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.windowsFirewallLogs = mapped
    }

    internal fun build(): DataCollectionRuleDataSourcesArgs = DataCollectionRuleDataSourcesArgs(
        dataImports = dataImports,
        extensions = extensions,
        iisLogs = iisLogs,
        logFiles = logFiles,
        performanceCounters = performanceCounters,
        platformTelemetry = platformTelemetry,
        prometheusForwarder = prometheusForwarder,
        syslog = syslog,
        windowsEventLogs = windowsEventLogs,
        windowsFirewallLogs = windowsFirewallLogs,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy