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

com.pulumi.awsnative.s3.kotlin.outputs.GetAccessGrantResult.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 com.pulumi.awsnative.s3.kotlin.enums.AccessGrantPermission
import kotlin.String
import kotlin.Suppress

/**
 *
 * @property accessGrantArn The Amazon Resource Name (ARN) of the specified access grant.
 * @property accessGrantId The ID assigned to this access grant.
 * @property accessGrantsLocationConfiguration The configuration options of the grant location, which is the S3 path to the data to which you are granting access.
 * @property accessGrantsLocationId The custom S3 location to be accessed by the grantee
 * @property applicationArn The ARN of the application grantees will use to access the location
 * @property grantScope The S3 path of the data to which you are granting access. It is a combination of the S3 path of the registered location and the subprefix.
 * @property grantee The principal who will be granted permission to access S3.
 * @property permission The level of access to be afforded to the grantee
 */
public data class GetAccessGrantResult(
    public val accessGrantArn: String? = null,
    public val accessGrantId: String? = null,
    public val accessGrantsLocationConfiguration: AccessGrantsLocationConfiguration? = null,
    public val accessGrantsLocationId: String? = null,
    public val applicationArn: String? = null,
    public val grantScope: String? = null,
    public val grantee: AccessGrantGrantee? = null,
    public val permission: AccessGrantPermission? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.s3.outputs.GetAccessGrantResult): GetAccessGrantResult = GetAccessGrantResult(
            accessGrantArn = javaType.accessGrantArn().map({ args0 -> args0 }).orElse(null),
            accessGrantId = javaType.accessGrantId().map({ args0 -> args0 }).orElse(null),
            accessGrantsLocationConfiguration = javaType.accessGrantsLocationConfiguration().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.s3.kotlin.outputs.AccessGrantsLocationConfiguration.Companion.toKotlin(args0)
                })
            }).orElse(null),
            accessGrantsLocationId = javaType.accessGrantsLocationId().map({ args0 -> args0 }).orElse(null),
            applicationArn = javaType.applicationArn().map({ args0 -> args0 }).orElse(null),
            grantScope = javaType.grantScope().map({ args0 -> args0 }).orElse(null),
            grantee = javaType.grantee().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.s3.kotlin.outputs.AccessGrantGrantee.Companion.toKotlin(args0)
                })
            }).orElse(null),
            permission = javaType.permission().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.s3.kotlin.enums.AccessGrantPermission.Companion.toKotlin(args0)
                })
            }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy