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

commonMain.aws.sdk.kotlin.services.s3.model.Event.kt Maven / Gradle / Ivy

// Code generated by smithy-kotlin-codegen. DO NOT EDIT!

package aws.sdk.kotlin.services.s3.model

import kotlin.collections.List

/**
 * The bucket event for which to send notifications.
 */
public sealed class Event {
    public abstract val value: kotlin.String

    public object S3IntelligentTiering : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:IntelligentTiering"
        override fun toString(): kotlin.String = "S3IntelligentTiering"
    }

    public object S3LifecycleExpiration : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:LifecycleExpiration:*"
        override fun toString(): kotlin.String = "S3LifecycleExpiration"
    }

    public object S3LifecycleExpirationDelete : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:LifecycleExpiration:Delete"
        override fun toString(): kotlin.String = "S3LifecycleExpirationDelete"
    }

    public object S3LifecycleExpirationDeleteMarkerCreated : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:LifecycleExpiration:DeleteMarkerCreated"
        override fun toString(): kotlin.String = "S3LifecycleExpirationDeleteMarkerCreated"
    }

    public object S3LifecycleTransition : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:LifecycleTransition"
        override fun toString(): kotlin.String = "S3LifecycleTransition"
    }

    public object S3ObjectAclPut : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectAcl:Put"
        override fun toString(): kotlin.String = "S3ObjectAclPut"
    }

    public object S3ObjectCreated : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectCreated:*"
        override fun toString(): kotlin.String = "S3ObjectCreated"
    }

    public object S3ObjectCreatedCompleteMultipartUpload : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectCreated:CompleteMultipartUpload"
        override fun toString(): kotlin.String = "S3ObjectCreatedCompleteMultipartUpload"
    }

    public object S3ObjectCreatedCopy : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectCreated:Copy"
        override fun toString(): kotlin.String = "S3ObjectCreatedCopy"
    }

    public object S3ObjectCreatedPost : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectCreated:Post"
        override fun toString(): kotlin.String = "S3ObjectCreatedPost"
    }

    public object S3ObjectCreatedPut : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectCreated:Put"
        override fun toString(): kotlin.String = "S3ObjectCreatedPut"
    }

    public object S3ObjectRemoved : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectRemoved:*"
        override fun toString(): kotlin.String = "S3ObjectRemoved"
    }

    public object S3ObjectRemovedDelete : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectRemoved:Delete"
        override fun toString(): kotlin.String = "S3ObjectRemovedDelete"
    }

    public object S3ObjectRemovedDeleteMarkerCreated : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectRemoved:DeleteMarkerCreated"
        override fun toString(): kotlin.String = "S3ObjectRemovedDeleteMarkerCreated"
    }

    public object S3ObjectRestore : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectRestore:*"
        override fun toString(): kotlin.String = "S3ObjectRestore"
    }

    public object S3ObjectRestoreCompleted : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectRestore:Completed"
        override fun toString(): kotlin.String = "S3ObjectRestoreCompleted"
    }

    public object S3ObjectRestoreDelete : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectRestore:Delete"
        override fun toString(): kotlin.String = "S3ObjectRestoreDelete"
    }

    public object S3ObjectRestorePost : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectRestore:Post"
        override fun toString(): kotlin.String = "S3ObjectRestorePost"
    }

    public object S3ObjectTagging : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectTagging:*"
        override fun toString(): kotlin.String = "S3ObjectTagging"
    }

    public object S3ObjectTaggingDelete : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectTagging:Delete"
        override fun toString(): kotlin.String = "S3ObjectTaggingDelete"
    }

    public object S3ObjectTaggingPut : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ObjectTagging:Put"
        override fun toString(): kotlin.String = "S3ObjectTaggingPut"
    }

    public object S3ReducedRedundancyLostObject : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:ReducedRedundancyLostObject"
        override fun toString(): kotlin.String = "S3ReducedRedundancyLostObject"
    }

    public object S3Replication : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:Replication:*"
        override fun toString(): kotlin.String = "S3Replication"
    }

    public object S3ReplicationOperationFailedReplication : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:Replication:OperationFailedReplication"
        override fun toString(): kotlin.String = "S3ReplicationOperationFailedReplication"
    }

    public object S3ReplicationOperationMissedThreshold : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:Replication:OperationMissedThreshold"
        override fun toString(): kotlin.String = "S3ReplicationOperationMissedThreshold"
    }

    public object S3ReplicationOperationNotTracked : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:Replication:OperationNotTracked"
        override fun toString(): kotlin.String = "S3ReplicationOperationNotTracked"
    }

    public object S3ReplicationOperationReplicatedAfterThreshold : aws.sdk.kotlin.services.s3.model.Event() {
        override val value: kotlin.String = "s3:Replication:OperationReplicatedAfterThreshold"
        override fun toString(): kotlin.String = "S3ReplicationOperationReplicatedAfterThreshold"
    }

    public data class SdkUnknown(override val value: kotlin.String) : aws.sdk.kotlin.services.s3.model.Event() {
        override fun toString(): kotlin.String = "SdkUnknown($value)"
    }

    public companion object {
        /**
         * Convert a raw value to one of the sealed variants or [SdkUnknown]
         */
        public fun fromValue(value: kotlin.String): aws.sdk.kotlin.services.s3.model.Event = when (value) {
            "s3:IntelligentTiering" -> S3IntelligentTiering
            "s3:LifecycleExpiration:*" -> S3LifecycleExpiration
            "s3:LifecycleExpiration:Delete" -> S3LifecycleExpirationDelete
            "s3:LifecycleExpiration:DeleteMarkerCreated" -> S3LifecycleExpirationDeleteMarkerCreated
            "s3:LifecycleTransition" -> S3LifecycleTransition
            "s3:ObjectAcl:Put" -> S3ObjectAclPut
            "s3:ObjectCreated:*" -> S3ObjectCreated
            "s3:ObjectCreated:CompleteMultipartUpload" -> S3ObjectCreatedCompleteMultipartUpload
            "s3:ObjectCreated:Copy" -> S3ObjectCreatedCopy
            "s3:ObjectCreated:Post" -> S3ObjectCreatedPost
            "s3:ObjectCreated:Put" -> S3ObjectCreatedPut
            "s3:ObjectRemoved:*" -> S3ObjectRemoved
            "s3:ObjectRemoved:Delete" -> S3ObjectRemovedDelete
            "s3:ObjectRemoved:DeleteMarkerCreated" -> S3ObjectRemovedDeleteMarkerCreated
            "s3:ObjectRestore:*" -> S3ObjectRestore
            "s3:ObjectRestore:Completed" -> S3ObjectRestoreCompleted
            "s3:ObjectRestore:Delete" -> S3ObjectRestoreDelete
            "s3:ObjectRestore:Post" -> S3ObjectRestorePost
            "s3:ObjectTagging:*" -> S3ObjectTagging
            "s3:ObjectTagging:Delete" -> S3ObjectTaggingDelete
            "s3:ObjectTagging:Put" -> S3ObjectTaggingPut
            "s3:ReducedRedundancyLostObject" -> S3ReducedRedundancyLostObject
            "s3:Replication:*" -> S3Replication
            "s3:Replication:OperationFailedReplication" -> S3ReplicationOperationFailedReplication
            "s3:Replication:OperationMissedThreshold" -> S3ReplicationOperationMissedThreshold
            "s3:Replication:OperationNotTracked" -> S3ReplicationOperationNotTracked
            "s3:Replication:OperationReplicatedAfterThreshold" -> S3ReplicationOperationReplicatedAfterThreshold
            else -> SdkUnknown(value)
        }

        /**
         * Get a list of all possible variants
         */
        public fun values(): kotlin.collections.List = values

        private val values: kotlin.collections.List = listOf(
            S3IntelligentTiering,
            S3LifecycleExpiration,
            S3LifecycleExpirationDelete,
            S3LifecycleExpirationDeleteMarkerCreated,
            S3LifecycleTransition,
            S3ObjectAclPut,
            S3ObjectCreated,
            S3ObjectCreatedCompleteMultipartUpload,
            S3ObjectCreatedCopy,
            S3ObjectCreatedPost,
            S3ObjectCreatedPut,
            S3ObjectRemoved,
            S3ObjectRemovedDelete,
            S3ObjectRemovedDeleteMarkerCreated,
            S3ObjectRestore,
            S3ObjectRestoreCompleted,
            S3ObjectRestoreDelete,
            S3ObjectRestorePost,
            S3ObjectTagging,
            S3ObjectTaggingDelete,
            S3ObjectTaggingPut,
            S3ReducedRedundancyLostObject,
            S3Replication,
            S3ReplicationOperationFailedReplication,
            S3ReplicationOperationMissedThreshold,
            S3ReplicationOperationNotTracked,
            S3ReplicationOperationReplicatedAfterThreshold,
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy