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

com.pulumi.alicloud.log.inputs.OssExportState Maven / Gradle / Ivy

There is a newer version: 3.63.0-alpha.1727424957
Show newest version
// *** 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.alicloud.log.inputs;

import com.pulumi.alicloud.log.inputs.OssExportConfigColumnArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final OssExportState Empty = new OssExportState();

    /**
     * The name of the oss bucket.
     * 
     */
    @Import(name="bucket")
    private @Nullable Output bucket;

    /**
     * @return The name of the oss bucket.
     * 
     */
    public Optional> bucket() {
        return Optional.ofNullable(this.bucket);
    }

    /**
     * How often is it delivered every interval.
     * 
     */
    @Import(name="bufferInterval")
    private @Nullable Output bufferInterval;

    /**
     * @return How often is it delivered every interval.
     * 
     */
    public Optional> bufferInterval() {
        return Optional.ofNullable(this.bufferInterval);
    }

    /**
     * Automatically control the creation interval of delivery tasks and set the upper limit of an OSS object size (calculated in uncompressed), unit: `MB`.
     * 
     */
    @Import(name="bufferSize")
    private @Nullable Output bufferSize;

    /**
     * @return Automatically control the creation interval of delivery tasks and set the upper limit of an OSS object size (calculated in uncompressed), unit: `MB`.
     * 
     */
    public Optional> bufferSize() {
        return Optional.ofNullable(this.bufferSize);
    }

    /**
     * OSS data storage compression method, support: `none`, `snappy`, `zstd`, `gzip`. Among them, none means that the original data is not compressed, and snappy means that the data is compressed using the snappy algorithm, which can reduce the storage space usage of the `OSS Bucket`.
     * 
     */
    @Import(name="compressType")
    private @Nullable Output compressType;

    /**
     * @return OSS data storage compression method, support: `none`, `snappy`, `zstd`, `gzip`. Among them, none means that the original data is not compressed, and snappy means that the data is compressed using the snappy algorithm, which can reduce the storage space usage of the `OSS Bucket`.
     * 
     */
    public Optional> compressType() {
        return Optional.ofNullable(this.compressType);
    }

    /**
     * Configure columns when `content_type` is `parquet` or `orc`.
     * 
     */
    @Import(name="configColumns")
    private @Nullable Output> configColumns;

    /**
     * @return Configure columns when `content_type` is `parquet` or `orc`.
     * 
     */
    public Optional>> configColumns() {
        return Optional.ofNullable(this.configColumns);
    }

    /**
     * Storage format, only supports three types: `json`, `parquet`, `orc`, `csv`.
     * **According to the different format, please select the following parameters**
     * 
     */
    @Import(name="contentType")
    private @Nullable Output contentType;

    /**
     * @return Storage format, only supports three types: `json`, `parquet`, `orc`, `csv`.
     * **According to the different format, please select the following parameters**
     * 
     */
    public Optional> contentType() {
        return Optional.ofNullable(this.contentType);
    }

    /**
     * Field configuration in csv content_type.
     * 
     */
    @Import(name="csvConfigColumns")
    private @Nullable Output> csvConfigColumns;

    /**
     * @return Field configuration in csv content_type.
     * 
     */
    public Optional>> csvConfigColumns() {
        return Optional.ofNullable(this.csvConfigColumns);
    }

    /**
     * Separator configuration in csv content_type.
     * 
     */
    @Import(name="csvConfigDelimiter")
    private @Nullable Output csvConfigDelimiter;

    /**
     * @return Separator configuration in csv content_type.
     * 
     */
    public Optional> csvConfigDelimiter() {
        return Optional.ofNullable(this.csvConfigDelimiter);
    }

    /**
     * escape in csv content_type.
     * 
     */
    @Import(name="csvConfigEscape")
    private @Nullable Output csvConfigEscape;

    /**
     * @return escape in csv content_type.
     * 
     */
    public Optional> csvConfigEscape() {
        return Optional.ofNullable(this.csvConfigEscape);
    }

    /**
     * Indicates whether to write the field name to the CSV file, the default value is `false`.
     * 
     */
    @Import(name="csvConfigHeader")
    private @Nullable Output csvConfigHeader;

    /**
     * @return Indicates whether to write the field name to the CSV file, the default value is `false`.
     * 
     */
    public Optional> csvConfigHeader() {
        return Optional.ofNullable(this.csvConfigHeader);
    }

    /**
     * lineFeed in csv content_type.
     * 
     */
    @Import(name="csvConfigLinefeed")
    private @Nullable Output csvConfigLinefeed;

    /**
     * @return lineFeed in csv content_type.
     * 
     */
    public Optional> csvConfigLinefeed() {
        return Optional.ofNullable(this.csvConfigLinefeed);
    }

    /**
     * Invalid field content in csv content_type.
     * 
     */
    @Import(name="csvConfigNull")
    private @Nullable Output csvConfigNull;

    /**
     * @return Invalid field content in csv content_type.
     * 
     */
    public Optional> csvConfigNull() {
        return Optional.ofNullable(this.csvConfigNull);
    }

    /**
     * Escape character in csv content_type.
     * 
     */
    @Import(name="csvConfigQuote")
    private @Nullable Output csvConfigQuote;

    /**
     * @return Escape character in csv content_type.
     * 
     */
    public Optional> csvConfigQuote() {
        return Optional.ofNullable(this.csvConfigQuote);
    }

    /**
     * The display name for oss export.
     * 
     */
    @Import(name="displayName")
    private @Nullable Output displayName;

    /**
     * @return The display name for oss export.
     * 
     */
    public Optional> displayName() {
        return Optional.ofNullable(this.displayName);
    }

    /**
     * Delivery configuration name, it can only contain lowercase letters, numbers, dashes `-` and underscores `_`. It must start and end with lowercase letters or numbers, and the name must be 2 to 128 characters long.
     * 
     */
    @Import(name="exportName")
    private @Nullable Output exportName;

    /**
     * @return Delivery configuration name, it can only contain lowercase letters, numbers, dashes `-` and underscores `_`. It must start and end with lowercase letters or numbers, and the name must be 2 to 128 characters long.
     * 
     */
    public Optional> exportName() {
        return Optional.ofNullable(this.exportName);
    }

    /**
     * The log from when to export to oss.
     * 
     */
    @Import(name="fromTime")
    private @Nullable Output fromTime;

    /**
     * @return The log from when to export to oss.
     * 
     */
    public Optional> fromTime() {
        return Optional.ofNullable(this.fromTime);
    }

    /**
     * Whether to deliver the label when `content_type` = `json`.
     * 
     */
    @Import(name="jsonEnableTag")
    private @Nullable Output jsonEnableTag;

    /**
     * @return Whether to deliver the label when `content_type` = `json`.
     * 
     */
    public Optional> jsonEnableTag() {
        return Optional.ofNullable(this.jsonEnableTag);
    }

    /**
     * Used for logstore reading, the role should have log read policy, such as `acs:ram::13234:role/logrole`, if `log_read_role_arn` is not set, `role_arn` is used to read logstore.
     * 
     */
    @Import(name="logReadRoleArn")
    private @Nullable Output logReadRoleArn;

    /**
     * @return Used for logstore reading, the role should have log read policy, such as `acs:ram::13234:role/logrole`, if `log_read_role_arn` is not set, `role_arn` is used to read logstore.
     * 
     */
    public Optional> logReadRoleArn() {
        return Optional.ofNullable(this.logReadRoleArn);
    }

    /**
     * The name of the log logstore.
     * 
     */
    @Import(name="logstoreName")
    private @Nullable Output logstoreName;

    /**
     * @return The name of the log logstore.
     * 
     */
    public Optional> logstoreName() {
        return Optional.ofNullable(this.logstoreName);
    }

    /**
     * The OSS Bucket directory is dynamically generated according to the creation time of the export task, it cannot start with a forward slash `/`, the default value is `%Y/%m/%d/%H/%M`.
     * 
     */
    @Import(name="pathFormat")
    private @Nullable Output pathFormat;

    /**
     * @return The OSS Bucket directory is dynamically generated according to the creation time of the export task, it cannot start with a forward slash `/`, the default value is `%Y/%m/%d/%H/%M`.
     * 
     */
    public Optional> pathFormat() {
        return Optional.ofNullable(this.pathFormat);
    }

    /**
     * The data synchronized from Log Service to OSS will be stored in this directory of Bucket.
     * 
     */
    @Import(name="prefix")
    private @Nullable Output prefix;

    /**
     * @return The data synchronized from Log Service to OSS will be stored in this directory of Bucket.
     * 
     */
    public Optional> prefix() {
        return Optional.ofNullable(this.prefix);
    }

    /**
     * The name of the log project. It is the only in one Alicloud account.
     * 
     */
    @Import(name="projectName")
    private @Nullable Output projectName;

    /**
     * @return The name of the log project. It is the only in one Alicloud account.
     * 
     */
    public Optional> projectName() {
        return Optional.ofNullable(this.projectName);
    }

    /**
     * Used to write to oss bucket, the OSS Bucket owner creates the role mark which has the oss bucket write policy, such as `acs:ram::13234:role/logrole`.
     * 
     */
    @Import(name="roleArn")
    private @Nullable Output roleArn;

    /**
     * @return Used to write to oss bucket, the OSS Bucket owner creates the role mark which has the oss bucket write policy, such as `acs:ram::13234:role/logrole`.
     * 
     */
    public Optional> roleArn() {
        return Optional.ofNullable(this.roleArn);
    }

    /**
     * The suffix for the objects in which the shipped data is stored.
     * 
     */
    @Import(name="suffix")
    private @Nullable Output suffix;

    /**
     * @return The suffix for the objects in which the shipped data is stored.
     * 
     */
    public Optional> suffix() {
        return Optional.ofNullable(this.suffix);
    }

    /**
     * This time zone that is used to format the time, `+0800` e.g.
     * 
     */
    @Import(name="timeZone")
    private @Nullable Output timeZone;

    /**
     * @return This time zone that is used to format the time, `+0800` e.g.
     * 
     */
    public Optional> timeZone() {
        return Optional.ofNullable(this.timeZone);
    }

    private OssExportState() {}

    private OssExportState(OssExportState $) {
        this.bucket = $.bucket;
        this.bufferInterval = $.bufferInterval;
        this.bufferSize = $.bufferSize;
        this.compressType = $.compressType;
        this.configColumns = $.configColumns;
        this.contentType = $.contentType;
        this.csvConfigColumns = $.csvConfigColumns;
        this.csvConfigDelimiter = $.csvConfigDelimiter;
        this.csvConfigEscape = $.csvConfigEscape;
        this.csvConfigHeader = $.csvConfigHeader;
        this.csvConfigLinefeed = $.csvConfigLinefeed;
        this.csvConfigNull = $.csvConfigNull;
        this.csvConfigQuote = $.csvConfigQuote;
        this.displayName = $.displayName;
        this.exportName = $.exportName;
        this.fromTime = $.fromTime;
        this.jsonEnableTag = $.jsonEnableTag;
        this.logReadRoleArn = $.logReadRoleArn;
        this.logstoreName = $.logstoreName;
        this.pathFormat = $.pathFormat;
        this.prefix = $.prefix;
        this.projectName = $.projectName;
        this.roleArn = $.roleArn;
        this.suffix = $.suffix;
        this.timeZone = $.timeZone;
    }

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

    public static final class Builder {
        private OssExportState $;

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

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

        /**
         * @param bucket The name of the oss bucket.
         * 
         * @return builder
         * 
         */
        public Builder bucket(@Nullable Output bucket) {
            $.bucket = bucket;
            return this;
        }

        /**
         * @param bucket The name of the oss bucket.
         * 
         * @return builder
         * 
         */
        public Builder bucket(String bucket) {
            return bucket(Output.of(bucket));
        }

        /**
         * @param bufferInterval How often is it delivered every interval.
         * 
         * @return builder
         * 
         */
        public Builder bufferInterval(@Nullable Output bufferInterval) {
            $.bufferInterval = bufferInterval;
            return this;
        }

        /**
         * @param bufferInterval How often is it delivered every interval.
         * 
         * @return builder
         * 
         */
        public Builder bufferInterval(Integer bufferInterval) {
            return bufferInterval(Output.of(bufferInterval));
        }

        /**
         * @param bufferSize Automatically control the creation interval of delivery tasks and set the upper limit of an OSS object size (calculated in uncompressed), unit: `MB`.
         * 
         * @return builder
         * 
         */
        public Builder bufferSize(@Nullable Output bufferSize) {
            $.bufferSize = bufferSize;
            return this;
        }

        /**
         * @param bufferSize Automatically control the creation interval of delivery tasks and set the upper limit of an OSS object size (calculated in uncompressed), unit: `MB`.
         * 
         * @return builder
         * 
         */
        public Builder bufferSize(Integer bufferSize) {
            return bufferSize(Output.of(bufferSize));
        }

        /**
         * @param compressType OSS data storage compression method, support: `none`, `snappy`, `zstd`, `gzip`. Among them, none means that the original data is not compressed, and snappy means that the data is compressed using the snappy algorithm, which can reduce the storage space usage of the `OSS Bucket`.
         * 
         * @return builder
         * 
         */
        public Builder compressType(@Nullable Output compressType) {
            $.compressType = compressType;
            return this;
        }

        /**
         * @param compressType OSS data storage compression method, support: `none`, `snappy`, `zstd`, `gzip`. Among them, none means that the original data is not compressed, and snappy means that the data is compressed using the snappy algorithm, which can reduce the storage space usage of the `OSS Bucket`.
         * 
         * @return builder
         * 
         */
        public Builder compressType(String compressType) {
            return compressType(Output.of(compressType));
        }

        /**
         * @param configColumns Configure columns when `content_type` is `parquet` or `orc`.
         * 
         * @return builder
         * 
         */
        public Builder configColumns(@Nullable Output> configColumns) {
            $.configColumns = configColumns;
            return this;
        }

        /**
         * @param configColumns Configure columns when `content_type` is `parquet` or `orc`.
         * 
         * @return builder
         * 
         */
        public Builder configColumns(List configColumns) {
            return configColumns(Output.of(configColumns));
        }

        /**
         * @param configColumns Configure columns when `content_type` is `parquet` or `orc`.
         * 
         * @return builder
         * 
         */
        public Builder configColumns(OssExportConfigColumnArgs... configColumns) {
            return configColumns(List.of(configColumns));
        }

        /**
         * @param contentType Storage format, only supports three types: `json`, `parquet`, `orc`, `csv`.
         * **According to the different format, please select the following parameters**
         * 
         * @return builder
         * 
         */
        public Builder contentType(@Nullable Output contentType) {
            $.contentType = contentType;
            return this;
        }

        /**
         * @param contentType Storage format, only supports three types: `json`, `parquet`, `orc`, `csv`.
         * **According to the different format, please select the following parameters**
         * 
         * @return builder
         * 
         */
        public Builder contentType(String contentType) {
            return contentType(Output.of(contentType));
        }

        /**
         * @param csvConfigColumns Field configuration in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigColumns(@Nullable Output> csvConfigColumns) {
            $.csvConfigColumns = csvConfigColumns;
            return this;
        }

        /**
         * @param csvConfigColumns Field configuration in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigColumns(List csvConfigColumns) {
            return csvConfigColumns(Output.of(csvConfigColumns));
        }

        /**
         * @param csvConfigColumns Field configuration in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigColumns(String... csvConfigColumns) {
            return csvConfigColumns(List.of(csvConfigColumns));
        }

        /**
         * @param csvConfigDelimiter Separator configuration in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigDelimiter(@Nullable Output csvConfigDelimiter) {
            $.csvConfigDelimiter = csvConfigDelimiter;
            return this;
        }

        /**
         * @param csvConfigDelimiter Separator configuration in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigDelimiter(String csvConfigDelimiter) {
            return csvConfigDelimiter(Output.of(csvConfigDelimiter));
        }

        /**
         * @param csvConfigEscape escape in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigEscape(@Nullable Output csvConfigEscape) {
            $.csvConfigEscape = csvConfigEscape;
            return this;
        }

        /**
         * @param csvConfigEscape escape in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigEscape(String csvConfigEscape) {
            return csvConfigEscape(Output.of(csvConfigEscape));
        }

        /**
         * @param csvConfigHeader Indicates whether to write the field name to the CSV file, the default value is `false`.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigHeader(@Nullable Output csvConfigHeader) {
            $.csvConfigHeader = csvConfigHeader;
            return this;
        }

        /**
         * @param csvConfigHeader Indicates whether to write the field name to the CSV file, the default value is `false`.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigHeader(Boolean csvConfigHeader) {
            return csvConfigHeader(Output.of(csvConfigHeader));
        }

        /**
         * @param csvConfigLinefeed lineFeed in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigLinefeed(@Nullable Output csvConfigLinefeed) {
            $.csvConfigLinefeed = csvConfigLinefeed;
            return this;
        }

        /**
         * @param csvConfigLinefeed lineFeed in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigLinefeed(String csvConfigLinefeed) {
            return csvConfigLinefeed(Output.of(csvConfigLinefeed));
        }

        /**
         * @param csvConfigNull Invalid field content in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigNull(@Nullable Output csvConfigNull) {
            $.csvConfigNull = csvConfigNull;
            return this;
        }

        /**
         * @param csvConfigNull Invalid field content in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigNull(String csvConfigNull) {
            return csvConfigNull(Output.of(csvConfigNull));
        }

        /**
         * @param csvConfigQuote Escape character in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigQuote(@Nullable Output csvConfigQuote) {
            $.csvConfigQuote = csvConfigQuote;
            return this;
        }

        /**
         * @param csvConfigQuote Escape character in csv content_type.
         * 
         * @return builder
         * 
         */
        public Builder csvConfigQuote(String csvConfigQuote) {
            return csvConfigQuote(Output.of(csvConfigQuote));
        }

        /**
         * @param displayName The display name for oss export.
         * 
         * @return builder
         * 
         */
        public Builder displayName(@Nullable Output displayName) {
            $.displayName = displayName;
            return this;
        }

        /**
         * @param displayName The display name for oss export.
         * 
         * @return builder
         * 
         */
        public Builder displayName(String displayName) {
            return displayName(Output.of(displayName));
        }

        /**
         * @param exportName Delivery configuration name, it can only contain lowercase letters, numbers, dashes `-` and underscores `_`. It must start and end with lowercase letters or numbers, and the name must be 2 to 128 characters long.
         * 
         * @return builder
         * 
         */
        public Builder exportName(@Nullable Output exportName) {
            $.exportName = exportName;
            return this;
        }

        /**
         * @param exportName Delivery configuration name, it can only contain lowercase letters, numbers, dashes `-` and underscores `_`. It must start and end with lowercase letters or numbers, and the name must be 2 to 128 characters long.
         * 
         * @return builder
         * 
         */
        public Builder exportName(String exportName) {
            return exportName(Output.of(exportName));
        }

        /**
         * @param fromTime The log from when to export to oss.
         * 
         * @return builder
         * 
         */
        public Builder fromTime(@Nullable Output fromTime) {
            $.fromTime = fromTime;
            return this;
        }

        /**
         * @param fromTime The log from when to export to oss.
         * 
         * @return builder
         * 
         */
        public Builder fromTime(Integer fromTime) {
            return fromTime(Output.of(fromTime));
        }

        /**
         * @param jsonEnableTag Whether to deliver the label when `content_type` = `json`.
         * 
         * @return builder
         * 
         */
        public Builder jsonEnableTag(@Nullable Output jsonEnableTag) {
            $.jsonEnableTag = jsonEnableTag;
            return this;
        }

        /**
         * @param jsonEnableTag Whether to deliver the label when `content_type` = `json`.
         * 
         * @return builder
         * 
         */
        public Builder jsonEnableTag(Boolean jsonEnableTag) {
            return jsonEnableTag(Output.of(jsonEnableTag));
        }

        /**
         * @param logReadRoleArn Used for logstore reading, the role should have log read policy, such as `acs:ram::13234:role/logrole`, if `log_read_role_arn` is not set, `role_arn` is used to read logstore.
         * 
         * @return builder
         * 
         */
        public Builder logReadRoleArn(@Nullable Output logReadRoleArn) {
            $.logReadRoleArn = logReadRoleArn;
            return this;
        }

        /**
         * @param logReadRoleArn Used for logstore reading, the role should have log read policy, such as `acs:ram::13234:role/logrole`, if `log_read_role_arn` is not set, `role_arn` is used to read logstore.
         * 
         * @return builder
         * 
         */
        public Builder logReadRoleArn(String logReadRoleArn) {
            return logReadRoleArn(Output.of(logReadRoleArn));
        }

        /**
         * @param logstoreName The name of the log logstore.
         * 
         * @return builder
         * 
         */
        public Builder logstoreName(@Nullable Output logstoreName) {
            $.logstoreName = logstoreName;
            return this;
        }

        /**
         * @param logstoreName The name of the log logstore.
         * 
         * @return builder
         * 
         */
        public Builder logstoreName(String logstoreName) {
            return logstoreName(Output.of(logstoreName));
        }

        /**
         * @param pathFormat The OSS Bucket directory is dynamically generated according to the creation time of the export task, it cannot start with a forward slash `/`, the default value is `%Y/%m/%d/%H/%M`.
         * 
         * @return builder
         * 
         */
        public Builder pathFormat(@Nullable Output pathFormat) {
            $.pathFormat = pathFormat;
            return this;
        }

        /**
         * @param pathFormat The OSS Bucket directory is dynamically generated according to the creation time of the export task, it cannot start with a forward slash `/`, the default value is `%Y/%m/%d/%H/%M`.
         * 
         * @return builder
         * 
         */
        public Builder pathFormat(String pathFormat) {
            return pathFormat(Output.of(pathFormat));
        }

        /**
         * @param prefix The data synchronized from Log Service to OSS will be stored in this directory of Bucket.
         * 
         * @return builder
         * 
         */
        public Builder prefix(@Nullable Output prefix) {
            $.prefix = prefix;
            return this;
        }

        /**
         * @param prefix The data synchronized from Log Service to OSS will be stored in this directory of Bucket.
         * 
         * @return builder
         * 
         */
        public Builder prefix(String prefix) {
            return prefix(Output.of(prefix));
        }

        /**
         * @param projectName The name of the log project. It is the only in one Alicloud account.
         * 
         * @return builder
         * 
         */
        public Builder projectName(@Nullable Output projectName) {
            $.projectName = projectName;
            return this;
        }

        /**
         * @param projectName The name of the log project. It is the only in one Alicloud account.
         * 
         * @return builder
         * 
         */
        public Builder projectName(String projectName) {
            return projectName(Output.of(projectName));
        }

        /**
         * @param roleArn Used to write to oss bucket, the OSS Bucket owner creates the role mark which has the oss bucket write policy, such as `acs:ram::13234:role/logrole`.
         * 
         * @return builder
         * 
         */
        public Builder roleArn(@Nullable Output roleArn) {
            $.roleArn = roleArn;
            return this;
        }

        /**
         * @param roleArn Used to write to oss bucket, the OSS Bucket owner creates the role mark which has the oss bucket write policy, such as `acs:ram::13234:role/logrole`.
         * 
         * @return builder
         * 
         */
        public Builder roleArn(String roleArn) {
            return roleArn(Output.of(roleArn));
        }

        /**
         * @param suffix The suffix for the objects in which the shipped data is stored.
         * 
         * @return builder
         * 
         */
        public Builder suffix(@Nullable Output suffix) {
            $.suffix = suffix;
            return this;
        }

        /**
         * @param suffix The suffix for the objects in which the shipped data is stored.
         * 
         * @return builder
         * 
         */
        public Builder suffix(String suffix) {
            return suffix(Output.of(suffix));
        }

        /**
         * @param timeZone This time zone that is used to format the time, `+0800` e.g.
         * 
         * @return builder
         * 
         */
        public Builder timeZone(@Nullable Output timeZone) {
            $.timeZone = timeZone;
            return this;
        }

        /**
         * @param timeZone This time zone that is used to format the time, `+0800` e.g.
         * 
         * @return builder
         * 
         */
        public Builder timeZone(String timeZone) {
            return timeZone(Output.of(timeZone));
        }

        public OssExportState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy