Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.securitylake.kotlin
import com.pulumi.awsnative.kotlin.inputs.TagArgs
import com.pulumi.awsnative.kotlin.inputs.TagArgsBuilder
import com.pulumi.awsnative.securitylake.SubscriberArgs.builder
import com.pulumi.awsnative.securitylake.kotlin.enums.SubscriberAccessTypesItem
import com.pulumi.awsnative.securitylake.kotlin.inputs.SubscriberIdentityPropertiesArgs
import com.pulumi.awsnative.securitylake.kotlin.inputs.SubscriberIdentityPropertiesArgsBuilder
import com.pulumi.awsnative.securitylake.kotlin.inputs.SubscriberSourceArgs
import com.pulumi.awsnative.securitylake.kotlin.inputs.SubscriberSourceArgsBuilder
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.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName
/**
* Resource Type definition for AWS::SecurityLake::Subscriber
* @property accessTypes You can choose to notify subscribers of new objects with an Amazon Simple Queue Service (Amazon SQS) queue or through messaging to an HTTPS endpoint provided by the subscriber.
* Subscribers can consume data by directly querying AWS Lake Formation tables in your Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as `LAKEFORMATION` .
* @property dataLakeArn The ARN for the data lake.
* @property sources The supported AWS services from which logs and events are collected.
* @property subscriberDescription The description for your subscriber account in Security Lake.
* @property subscriberIdentity The AWS identity used to access your data.
* @property subscriberName The name of your Security Lake subscriber account.
* @property tags An array of objects, one for each tag to associate with the subscriber. For each tag, you must specify both a tag key and a tag value. A tag value cannot be null, but it can be an empty string.
*/
public data class SubscriberArgs(
public val accessTypes: Output>? = null,
public val dataLakeArn: Output? = null,
public val sources: Output>? = null,
public val subscriberDescription: Output? = null,
public val subscriberIdentity: Output? = null,
public val subscriberName: Output? = null,
public val tags: Output>? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.securitylake.SubscriberArgs =
com.pulumi.awsnative.securitylake.SubscriberArgs.builder()
.accessTypes(
accessTypes?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.dataLakeArn(dataLakeArn?.applyValue({ args0 -> args0 }))
.sources(
sources?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
)
.subscriberDescription(subscriberDescription?.applyValue({ args0 -> args0 }))
.subscriberIdentity(
subscriberIdentity?.applyValue({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
}),
)
.subscriberName(subscriberName?.applyValue({ args0 -> args0 }))
.tags(
tags?.applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 ->
args0.toJava()
})
})
}),
).build()
}
/**
* Builder for [SubscriberArgs].
*/
@PulumiTagMarker
public class SubscriberArgsBuilder internal constructor() {
private var accessTypes: Output>? = null
private var dataLakeArn: Output? = null
private var sources: Output>? = null
private var subscriberDescription: Output? = null
private var subscriberIdentity: Output? = null
private var subscriberName: Output? = null
private var tags: Output>? = null
/**
* @param value You can choose to notify subscribers of new objects with an Amazon Simple Queue Service (Amazon SQS) queue or through messaging to an HTTPS endpoint provided by the subscriber.
* Subscribers can consume data by directly querying AWS Lake Formation tables in your Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as `LAKEFORMATION` .
*/
@JvmName("hadalnmhuplgrwrh")
public suspend fun accessTypes(`value`: Output>) {
this.accessTypes = value
}
@JvmName("uslamlrcbwuyhgmw")
public suspend fun accessTypes(vararg values: Output) {
this.accessTypes = Output.all(values.asList())
}
/**
* @param values You can choose to notify subscribers of new objects with an Amazon Simple Queue Service (Amazon SQS) queue or through messaging to an HTTPS endpoint provided by the subscriber.
* Subscribers can consume data by directly querying AWS Lake Formation tables in your Amazon S3 bucket through services like Amazon Athena. This subscription type is defined as `LAKEFORMATION` .
*/
@JvmName("hlbirjhwuocvfujm")
public suspend fun accessTypes(values: List