com.pulumi.aws.s3.kotlin.inputs.GetBucketObjectsPlainArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.aws.s3.kotlin.inputs
import com.pulumi.aws.s3.inputs.GetBucketObjectsPlainArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Boolean
import kotlin.Deprecated
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* A collection of arguments for invoking getBucketObjects.
* @property bucket Lists object keys in this S3 bucket. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified
* @property delimiter Character used to group keys (Default: none)
* @property encodingType Encodes keys using this method (Default: none; besides none, only "url" can be used)
* @property fetchOwner Boolean specifying whether to populate the owner list (Default: false)
* @property maxKeys Maximum object keys to return (Default: 1000)
* @property prefix Limits results to object keys with this prefix (Default: none)
* @property startAfter Returns key names lexicographically after a specific object key in your bucket (Default: none; S3 lists object keys in UTF-8 character encoding in lexicographical order)
*/
public data class GetBucketObjectsPlainArgs(
@Deprecated(
message = """
Use the aws.s3.getObjects data source instead
""",
)
public val bucket: String,
public val delimiter: String? = null,
public val encodingType: String? = null,
public val fetchOwner: Boolean? = null,
public val maxKeys: Int? = null,
public val prefix: String? = null,
public val startAfter: String? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.aws.s3.inputs.GetBucketObjectsPlainArgs =
com.pulumi.aws.s3.inputs.GetBucketObjectsPlainArgs.builder()
.bucket(bucket.let({ args0 -> args0 }))
.delimiter(delimiter?.let({ args0 -> args0 }))
.encodingType(encodingType?.let({ args0 -> args0 }))
.fetchOwner(fetchOwner?.let({ args0 -> args0 }))
.maxKeys(maxKeys?.let({ args0 -> args0 }))
.prefix(prefix?.let({ args0 -> args0 }))
.startAfter(startAfter?.let({ args0 -> args0 })).build()
}
/**
* Builder for [GetBucketObjectsPlainArgs].
*/
@PulumiTagMarker
public class GetBucketObjectsPlainArgsBuilder internal constructor() {
private var bucket: String? = null
private var delimiter: String? = null
private var encodingType: String? = null
private var fetchOwner: Boolean? = null
private var maxKeys: Int? = null
private var prefix: String? = null
private var startAfter: String? = null
/**
* @param value Lists object keys in this S3 bucket. Alternatively, an [S3 access point](https://docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html) ARN can be specified
*/
@Deprecated(
message = """
Use the aws.s3.getObjects data source instead
""",
)
@JvmName("ydydhtmypxohqisa")
public suspend fun bucket(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> args0 })
this.bucket = mapped
}
/**
* @param value Character used to group keys (Default: none)
*/
@JvmName("halhreamstfxexwo")
public suspend fun delimiter(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> args0 })
this.delimiter = mapped
}
/**
* @param value Encodes keys using this method (Default: none; besides none, only "url" can be used)
*/
@JvmName("gsvlsrpxcyrbqpyt")
public suspend fun encodingType(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> args0 })
this.encodingType = mapped
}
/**
* @param value Boolean specifying whether to populate the owner list (Default: false)
*/
@JvmName("peoljhqamxndqgih")
public suspend fun fetchOwner(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> args0 })
this.fetchOwner = mapped
}
/**
* @param value Maximum object keys to return (Default: 1000)
*/
@JvmName("sflbfdikihjcikwk")
public suspend fun maxKeys(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> args0 })
this.maxKeys = mapped
}
/**
* @param value Limits results to object keys with this prefix (Default: none)
*/
@JvmName("xoovvptjcqhrawky")
public suspend fun prefix(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> args0 })
this.prefix = mapped
}
/**
* @param value Returns key names lexicographically after a specific object key in your bucket (Default: none; S3 lists object keys in UTF-8 character encoding in lexicographical order)
*/
@JvmName("pqpduioeucmwltlv")
public suspend fun startAfter(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> args0 })
this.startAfter = mapped
}
internal fun build(): GetBucketObjectsPlainArgs = GetBucketObjectsPlainArgs(
bucket = bucket ?: throw PulumiNullFieldException("bucket"),
delimiter = delimiter,
encodingType = encodingType,
fetchOwner = fetchOwner,
maxKeys = maxKeys,
prefix = prefix,
startAfter = startAfter,
)
}