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

com.pulumi.aws.datasync.inputs.TaskTaskReportConfigArgs 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.datasync.inputs;

import com.pulumi.aws.datasync.inputs.TaskTaskReportConfigReportOverridesArgs;
import com.pulumi.aws.datasync.inputs.TaskTaskReportConfigS3DestinationArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final TaskTaskReportConfigArgs Empty = new TaskTaskReportConfigArgs();

    /**
     * Specifies the type of task report you'd like. Valid values: `SUMMARY_ONLY` and `STANDARD`.
     * 
     */
    @Import(name="outputType")
    private @Nullable Output outputType;

    /**
     * @return Specifies the type of task report you'd like. Valid values: `SUMMARY_ONLY` and `STANDARD`.
     * 
     */
    public Optional> outputType() {
        return Optional.ofNullable(this.outputType);
    }

    /**
     * Specifies whether you want your task report to include only what went wrong with your transfer or a list of what succeeded and didn't. Valid values: `ERRORS_ONLY` and `SUCCESSES_AND_ERRORS`.
     * 
     */
    @Import(name="reportLevel")
    private @Nullable Output reportLevel;

    /**
     * @return Specifies whether you want your task report to include only what went wrong with your transfer or a list of what succeeded and didn't. Valid values: `ERRORS_ONLY` and `SUCCESSES_AND_ERRORS`.
     * 
     */
    public Optional> reportLevel() {
        return Optional.ofNullable(this.reportLevel);
    }

    /**
     * Configuration block containing the configuration of the reporting level for aspects of your task report. See `report_overrides` below.
     * 
     */
    @Import(name="reportOverrides")
    private @Nullable Output reportOverrides;

    /**
     * @return Configuration block containing the configuration of the reporting level for aspects of your task report. See `report_overrides` below.
     * 
     */
    public Optional> reportOverrides() {
        return Optional.ofNullable(this.reportOverrides);
    }

    /**
     * Configuration block containing the configuration for the Amazon S3 bucket where DataSync uploads your task report. See `s3_destination` below.
     * 
     */
    @Import(name="s3Destination", required=true)
    private Output s3Destination;

    /**
     * @return Configuration block containing the configuration for the Amazon S3 bucket where DataSync uploads your task report. See `s3_destination` below.
     * 
     */
    public Output s3Destination() {
        return this.s3Destination;
    }

    /**
     * Specifies whether your task report includes the new version of each object transferred into an S3 bucket. This only applies if you enable versioning on your bucket. Keep in mind that setting this to INCLUDE can increase the duration of your task execution. Valid values: `INCLUDE` and `NONE`.
     * 
     */
    @Import(name="s3ObjectVersioning")
    private @Nullable Output s3ObjectVersioning;

    /**
     * @return Specifies whether your task report includes the new version of each object transferred into an S3 bucket. This only applies if you enable versioning on your bucket. Keep in mind that setting this to INCLUDE can increase the duration of your task execution. Valid values: `INCLUDE` and `NONE`.
     * 
     */
    public Optional> s3ObjectVersioning() {
        return Optional.ofNullable(this.s3ObjectVersioning);
    }

    private TaskTaskReportConfigArgs() {}

    private TaskTaskReportConfigArgs(TaskTaskReportConfigArgs $) {
        this.outputType = $.outputType;
        this.reportLevel = $.reportLevel;
        this.reportOverrides = $.reportOverrides;
        this.s3Destination = $.s3Destination;
        this.s3ObjectVersioning = $.s3ObjectVersioning;
    }

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

    public static final class Builder {
        private TaskTaskReportConfigArgs $;

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

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

        /**
         * @param outputType Specifies the type of task report you'd like. Valid values: `SUMMARY_ONLY` and `STANDARD`.
         * 
         * @return builder
         * 
         */
        public Builder outputType(@Nullable Output outputType) {
            $.outputType = outputType;
            return this;
        }

        /**
         * @param outputType Specifies the type of task report you'd like. Valid values: `SUMMARY_ONLY` and `STANDARD`.
         * 
         * @return builder
         * 
         */
        public Builder outputType(String outputType) {
            return outputType(Output.of(outputType));
        }

        /**
         * @param reportLevel Specifies whether you want your task report to include only what went wrong with your transfer or a list of what succeeded and didn't. Valid values: `ERRORS_ONLY` and `SUCCESSES_AND_ERRORS`.
         * 
         * @return builder
         * 
         */
        public Builder reportLevel(@Nullable Output reportLevel) {
            $.reportLevel = reportLevel;
            return this;
        }

        /**
         * @param reportLevel Specifies whether you want your task report to include only what went wrong with your transfer or a list of what succeeded and didn't. Valid values: `ERRORS_ONLY` and `SUCCESSES_AND_ERRORS`.
         * 
         * @return builder
         * 
         */
        public Builder reportLevel(String reportLevel) {
            return reportLevel(Output.of(reportLevel));
        }

        /**
         * @param reportOverrides Configuration block containing the configuration of the reporting level for aspects of your task report. See `report_overrides` below.
         * 
         * @return builder
         * 
         */
        public Builder reportOverrides(@Nullable Output reportOverrides) {
            $.reportOverrides = reportOverrides;
            return this;
        }

        /**
         * @param reportOverrides Configuration block containing the configuration of the reporting level for aspects of your task report. See `report_overrides` below.
         * 
         * @return builder
         * 
         */
        public Builder reportOverrides(TaskTaskReportConfigReportOverridesArgs reportOverrides) {
            return reportOverrides(Output.of(reportOverrides));
        }

        /**
         * @param s3Destination Configuration block containing the configuration for the Amazon S3 bucket where DataSync uploads your task report. See `s3_destination` below.
         * 
         * @return builder
         * 
         */
        public Builder s3Destination(Output s3Destination) {
            $.s3Destination = s3Destination;
            return this;
        }

        /**
         * @param s3Destination Configuration block containing the configuration for the Amazon S3 bucket where DataSync uploads your task report. See `s3_destination` below.
         * 
         * @return builder
         * 
         */
        public Builder s3Destination(TaskTaskReportConfigS3DestinationArgs s3Destination) {
            return s3Destination(Output.of(s3Destination));
        }

        /**
         * @param s3ObjectVersioning Specifies whether your task report includes the new version of each object transferred into an S3 bucket. This only applies if you enable versioning on your bucket. Keep in mind that setting this to INCLUDE can increase the duration of your task execution. Valid values: `INCLUDE` and `NONE`.
         * 
         * @return builder
         * 
         */
        public Builder s3ObjectVersioning(@Nullable Output s3ObjectVersioning) {
            $.s3ObjectVersioning = s3ObjectVersioning;
            return this;
        }

        /**
         * @param s3ObjectVersioning Specifies whether your task report includes the new version of each object transferred into an S3 bucket. This only applies if you enable versioning on your bucket. Keep in mind that setting this to INCLUDE can increase the duration of your task execution. Valid values: `INCLUDE` and `NONE`.
         * 
         * @return builder
         * 
         */
        public Builder s3ObjectVersioning(String s3ObjectVersioning) {
            return s3ObjectVersioning(Output.of(s3ObjectVersioning));
        }

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

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy