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

com.pulumi.azurenative.insights.kotlin.outputs.DataCollectionRuleResponseDestinations.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.insights.kotlin.outputs

import kotlin.Suppress
import kotlin.collections.List

/**
 * The specification of destinations.
 * @property azureMonitorMetrics Azure Monitor Metrics destination.
 * @property eventHubs List of Event Hubs destinations.
 * @property eventHubsDirect List of Event Hubs Direct destinations.
 * @property logAnalytics List of Log Analytics destinations.
 * @property monitoringAccounts List of monitoring account destinations.
 * @property storageAccounts List of storage accounts destinations.
 * @property storageBlobsDirect List of Storage Blob Direct destinations. To be used only for sending data directly to store from the agent.
 * @property storageTablesDirect List of Storage Table Direct destinations.
 */
public data class DataCollectionRuleResponseDestinations(
    public val azureMonitorMetrics: DestinationsSpecResponseAzureMonitorMetrics? = null,
    public val eventHubs: List? = null,
    public val eventHubsDirect: List? = null,
    public val logAnalytics: List? = null,
    public val monitoringAccounts: List? = null,
    public val storageAccounts: List? = null,
    public val storageBlobsDirect: List? = null,
    public val storageTablesDirect: List? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azurenative.insights.outputs.DataCollectionRuleResponseDestinations): DataCollectionRuleResponseDestinations = DataCollectionRuleResponseDestinations(
            azureMonitorMetrics = javaType.azureMonitorMetrics().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.insights.kotlin.outputs.DestinationsSpecResponseAzureMonitorMetrics.Companion.toKotlin(args0)
                })
            }).orElse(null),
            eventHubs = javaType.eventHubs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.insights.kotlin.outputs.EventHubDestinationResponse.Companion.toKotlin(args0)
                })
            }),
            eventHubsDirect = javaType.eventHubsDirect().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.insights.kotlin.outputs.EventHubDirectDestinationResponse.Companion.toKotlin(args0)
                })
            }),
            logAnalytics = javaType.logAnalytics().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.insights.kotlin.outputs.LogAnalyticsDestinationResponse.Companion.toKotlin(args0)
                })
            }),
            monitoringAccounts = javaType.monitoringAccounts().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.insights.kotlin.outputs.MonitoringAccountDestinationResponse.Companion.toKotlin(args0)
                })
            }),
            storageAccounts = javaType.storageAccounts().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.insights.kotlin.outputs.StorageBlobDestinationResponse.Companion.toKotlin(args0)
                })
            }),
            storageBlobsDirect = javaType.storageBlobsDirect().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.insights.kotlin.outputs.StorageBlobDestinationResponse.Companion.toKotlin(args0)
                })
            }),
            storageTablesDirect = javaType.storageTablesDirect().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azurenative.insights.kotlin.outputs.StorageTableDestinationResponse.Companion.toKotlin(args0)
                })
            }),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy