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

com.pulumi.aws.bedrock.inputs.AgentDataSourceDataSourceConfigurationS3ConfigurationArgs Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.aws.bedrock.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class AgentDataSourceDataSourceConfigurationS3ConfigurationArgs extends com.pulumi.resources.ResourceArgs {

    public static final AgentDataSourceDataSourceConfigurationS3ConfigurationArgs Empty = new AgentDataSourceDataSourceConfigurationS3ConfigurationArgs();

    /**
     * ARN of the bucket that contains the data source.
     * 
     */
    @Import(name="bucketArn", required=true)
    private Output bucketArn;

    /**
     * @return ARN of the bucket that contains the data source.
     * 
     */
    public Output bucketArn() {
        return this.bucketArn;
    }

    /**
     * Bucket account owner ID for the S3 bucket.
     * 
     */
    @Import(name="bucketOwnerAccountId")
    private @Nullable Output bucketOwnerAccountId;

    /**
     * @return Bucket account owner ID for the S3 bucket.
     * 
     */
    public Optional> bucketOwnerAccountId() {
        return Optional.ofNullable(this.bucketOwnerAccountId);
    }

    /**
     * List of S3 prefixes that define the object containing the data sources. For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html).
     * 
     */
    @Import(name="inclusionPrefixes")
    private @Nullable Output> inclusionPrefixes;

    /**
     * @return List of S3 prefixes that define the object containing the data sources. For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html).
     * 
     */
    public Optional>> inclusionPrefixes() {
        return Optional.ofNullable(this.inclusionPrefixes);
    }

    private AgentDataSourceDataSourceConfigurationS3ConfigurationArgs() {}

    private AgentDataSourceDataSourceConfigurationS3ConfigurationArgs(AgentDataSourceDataSourceConfigurationS3ConfigurationArgs $) {
        this.bucketArn = $.bucketArn;
        this.bucketOwnerAccountId = $.bucketOwnerAccountId;
        this.inclusionPrefixes = $.inclusionPrefixes;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(AgentDataSourceDataSourceConfigurationS3ConfigurationArgs defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private AgentDataSourceDataSourceConfigurationS3ConfigurationArgs $;

        public Builder() {
            $ = new AgentDataSourceDataSourceConfigurationS3ConfigurationArgs();
        }

        public Builder(AgentDataSourceDataSourceConfigurationS3ConfigurationArgs defaults) {
            $ = new AgentDataSourceDataSourceConfigurationS3ConfigurationArgs(Objects.requireNonNull(defaults));
        }

        /**
         * @param bucketArn ARN of the bucket that contains the data source.
         * 
         * @return builder
         * 
         */
        public Builder bucketArn(Output bucketArn) {
            $.bucketArn = bucketArn;
            return this;
        }

        /**
         * @param bucketArn ARN of the bucket that contains the data source.
         * 
         * @return builder
         * 
         */
        public Builder bucketArn(String bucketArn) {
            return bucketArn(Output.of(bucketArn));
        }

        /**
         * @param bucketOwnerAccountId Bucket account owner ID for the S3 bucket.
         * 
         * @return builder
         * 
         */
        public Builder bucketOwnerAccountId(@Nullable Output bucketOwnerAccountId) {
            $.bucketOwnerAccountId = bucketOwnerAccountId;
            return this;
        }

        /**
         * @param bucketOwnerAccountId Bucket account owner ID for the S3 bucket.
         * 
         * @return builder
         * 
         */
        public Builder bucketOwnerAccountId(String bucketOwnerAccountId) {
            return bucketOwnerAccountId(Output.of(bucketOwnerAccountId));
        }

        /**
         * @param inclusionPrefixes List of S3 prefixes that define the object containing the data sources. For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html).
         * 
         * @return builder
         * 
         */
        public Builder inclusionPrefixes(@Nullable Output> inclusionPrefixes) {
            $.inclusionPrefixes = inclusionPrefixes;
            return this;
        }

        /**
         * @param inclusionPrefixes List of S3 prefixes that define the object containing the data sources. For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html).
         * 
         * @return builder
         * 
         */
        public Builder inclusionPrefixes(List inclusionPrefixes) {
            return inclusionPrefixes(Output.of(inclusionPrefixes));
        }

        /**
         * @param inclusionPrefixes List of S3 prefixes that define the object containing the data sources. For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html).
         * 
         * @return builder
         * 
         */
        public Builder inclusionPrefixes(String... inclusionPrefixes) {
            return inclusionPrefixes(List.of(inclusionPrefixes));
        }

        public AgentDataSourceDataSourceConfigurationS3ConfigurationArgs build() {
            if ($.bucketArn == null) {
                throw new MissingRequiredPropertyException("AgentDataSourceDataSourceConfigurationS3ConfigurationArgs", "bucketArn");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy