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

com.pulumi.awsnative.s3.kotlin.outputs.BucketQueueConfiguration.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: 1.24.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.s3.kotlin.outputs

import kotlin.String
import kotlin.Suppress

/**
 * Specifies the configuration for publishing messages to an Amazon Simple Queue Service (Amazon SQS) queue when Amazon S3 detects specified events.
 * @property event The Amazon S3 bucket event about which you want to publish messages to Amazon SQS. For more information, see [Supported Event Types](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the *Amazon S3 User Guide*.
 * @property filter The filtering rules that determine which objects trigger notifications. For example, you can create a filter so that Amazon S3 sends notifications only when image files with a ``.jpg`` extension are added to the bucket. For more information, see [Configuring event notifications using object key name filtering](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/notification-how-to-filtering.html) in the *Amazon S3 User Guide*.
 * @property queue The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type. FIFO queues are not allowed when enabling an SQS queue as the event notification destination.
 */
public data class BucketQueueConfiguration(
    public val event: String,
    public val filter: BucketNotificationFilter? = null,
    public val queue: String,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.s3.outputs.BucketQueueConfiguration): BucketQueueConfiguration = BucketQueueConfiguration(
            event = javaType.event(),
            filter = javaType.filter().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.s3.kotlin.outputs.BucketNotificationFilter.Companion.toKotlin(args0)
                })
            }).orElse(null),
            queue = javaType.queue(),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy