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

com.pulumi.awsnative.fms.kotlin.FmsFunctions.kt Maven / Gradle / Ivy

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

package com.pulumi.awsnative.fms.kotlin

import com.pulumi.awsnative.fms.FmsFunctions.getNotificationChannelPlain
import com.pulumi.awsnative.fms.FmsFunctions.getPolicyPlain
import com.pulumi.awsnative.fms.FmsFunctions.getResourceSetPlain
import com.pulumi.awsnative.fms.kotlin.inputs.GetNotificationChannelPlainArgs
import com.pulumi.awsnative.fms.kotlin.inputs.GetNotificationChannelPlainArgsBuilder
import com.pulumi.awsnative.fms.kotlin.inputs.GetPolicyPlainArgs
import com.pulumi.awsnative.fms.kotlin.inputs.GetPolicyPlainArgsBuilder
import com.pulumi.awsnative.fms.kotlin.inputs.GetResourceSetPlainArgs
import com.pulumi.awsnative.fms.kotlin.inputs.GetResourceSetPlainArgsBuilder
import com.pulumi.awsnative.fms.kotlin.outputs.GetNotificationChannelResult
import com.pulumi.awsnative.fms.kotlin.outputs.GetPolicyResult
import com.pulumi.awsnative.fms.kotlin.outputs.GetResourceSetResult
import kotlinx.coroutines.future.await
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import com.pulumi.awsnative.fms.kotlin.outputs.GetNotificationChannelResult.Companion.toKotlin as getNotificationChannelResultToKotlin
import com.pulumi.awsnative.fms.kotlin.outputs.GetPolicyResult.Companion.toKotlin as getPolicyResultToKotlin
import com.pulumi.awsnative.fms.kotlin.outputs.GetResourceSetResult.Companion.toKotlin as getResourceSetResultToKotlin

public object FmsFunctions {
    /**
     * Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs.
     * @param argument null
     * @return null
     */
    public suspend fun getNotificationChannel(argument: GetNotificationChannelPlainArgs): GetNotificationChannelResult =
        getNotificationChannelResultToKotlin(getNotificationChannelPlain(argument.toJava()).await())

    /**
     * @see [getNotificationChannel].
     * @param snsTopicArn The Amazon Resource Name (ARN) of the SNS topic that collects notifications from AWS Firewall Manager .
     * @return null
     */
    public suspend fun getNotificationChannel(snsTopicArn: String): GetNotificationChannelResult {
        val argument = GetNotificationChannelPlainArgs(
            snsTopicArn = snsTopicArn,
        )
        return getNotificationChannelResultToKotlin(getNotificationChannelPlain(argument.toJava()).await())
    }

    /**
     * @see [getNotificationChannel].
     * @param argument Builder for [com.pulumi.awsnative.fms.kotlin.inputs.GetNotificationChannelPlainArgs].
     * @return null
     */
    public suspend fun getNotificationChannel(argument: suspend GetNotificationChannelPlainArgsBuilder.() -> Unit): GetNotificationChannelResult {
        val builder = GetNotificationChannelPlainArgsBuilder()
        builder.argument()
        val builtArgument = builder.build()
        return getNotificationChannelResultToKotlin(getNotificationChannelPlain(builtArgument.toJava()).await())
    }

    /**
     * Creates an AWS Firewall Manager policy.
     * @param argument null
     * @return null
     */
    public suspend fun getPolicy(argument: GetPolicyPlainArgs): GetPolicyResult =
        getPolicyResultToKotlin(getPolicyPlain(argument.toJava()).await())

    /**
     * @see [getPolicy].
     * @param id The ID of the policy.
     * @return null
     */
    public suspend fun getPolicy(id: String): GetPolicyResult {
        val argument = GetPolicyPlainArgs(
            id = id,
        )
        return getPolicyResultToKotlin(getPolicyPlain(argument.toJava()).await())
    }

    /**
     * @see [getPolicy].
     * @param argument Builder for [com.pulumi.awsnative.fms.kotlin.inputs.GetPolicyPlainArgs].
     * @return null
     */
    public suspend fun getPolicy(argument: suspend GetPolicyPlainArgsBuilder.() -> Unit): GetPolicyResult {
        val builder = GetPolicyPlainArgsBuilder()
        builder.argument()
        val builtArgument = builder.build()
        return getPolicyResultToKotlin(getPolicyPlain(builtArgument.toJava()).await())
    }

    /**
     * Creates an AWS Firewall Manager resource set.
     * @param argument null
     * @return null
     */
    public suspend fun getResourceSet(argument: GetResourceSetPlainArgs): GetResourceSetResult =
        getResourceSetResultToKotlin(getResourceSetPlain(argument.toJava()).await())

    /**
     * @see [getResourceSet].
     * @param id A unique identifier for the resource set. This ID is returned in the responses to create and list commands. You provide it to operations like update and delete.
     * @return null
     */
    public suspend fun getResourceSet(id: String): GetResourceSetResult {
        val argument = GetResourceSetPlainArgs(
            id = id,
        )
        return getResourceSetResultToKotlin(getResourceSetPlain(argument.toJava()).await())
    }

    /**
     * @see [getResourceSet].
     * @param argument Builder for [com.pulumi.awsnative.fms.kotlin.inputs.GetResourceSetPlainArgs].
     * @return null
     */
    public suspend fun getResourceSet(argument: suspend GetResourceSetPlainArgsBuilder.() -> Unit): GetResourceSetResult {
        val builder = GetResourceSetPlainArgsBuilder()
        builder.argument()
        val builtArgument = builder.build()
        return getResourceSetResultToKotlin(getResourceSetPlain(builtArgument.toJava()).await())
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy