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

com.pulumi.aws.macie2.inputs.ClassificationJobS3JobDefinitionArgs Maven / Gradle / Ivy

Go to download

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

There is a newer version: 6.60.0-alpha.1731982519
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.aws.macie2.inputs;

import com.pulumi.aws.macie2.inputs.ClassificationJobS3JobDefinitionBucketCriteriaArgs;
import com.pulumi.aws.macie2.inputs.ClassificationJobS3JobDefinitionBucketDefinitionArgs;
import com.pulumi.aws.macie2.inputs.ClassificationJobS3JobDefinitionScopingArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final ClassificationJobS3JobDefinitionArgs Empty = new ClassificationJobS3JobDefinitionArgs();

    /**
     * The property- and tag-based conditions that determine which S3 buckets to include or exclude from the analysis. Conflicts with `bucket_definitions`. (documented below)
     * 
     */
    @Import(name="bucketCriteria")
    private @Nullable Output bucketCriteria;

    /**
     * @return The property- and tag-based conditions that determine which S3 buckets to include or exclude from the analysis. Conflicts with `bucket_definitions`. (documented below)
     * 
     */
    public Optional> bucketCriteria() {
        return Optional.ofNullable(this.bucketCriteria);
    }

    /**
     * An array of objects, one for each AWS account that owns buckets to analyze. Each object specifies the account ID for an account and one or more buckets to analyze for the account. Conflicts with `bucket_criteria`. (documented below)
     * 
     */
    @Import(name="bucketDefinitions")
    private @Nullable Output> bucketDefinitions;

    /**
     * @return An array of objects, one for each AWS account that owns buckets to analyze. Each object specifies the account ID for an account and one or more buckets to analyze for the account. Conflicts with `bucket_criteria`. (documented below)
     * 
     */
    public Optional>> bucketDefinitions() {
        return Optional.ofNullable(this.bucketDefinitions);
    }

    /**
     * The property- and tag-based conditions that determine which objects to include or exclude from the analysis. (documented below)
     * 
     */
    @Import(name="scoping")
    private @Nullable Output scoping;

    /**
     * @return The property- and tag-based conditions that determine which objects to include or exclude from the analysis. (documented below)
     * 
     */
    public Optional> scoping() {
        return Optional.ofNullable(this.scoping);
    }

    private ClassificationJobS3JobDefinitionArgs() {}

    private ClassificationJobS3JobDefinitionArgs(ClassificationJobS3JobDefinitionArgs $) {
        this.bucketCriteria = $.bucketCriteria;
        this.bucketDefinitions = $.bucketDefinitions;
        this.scoping = $.scoping;
    }

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

    public static final class Builder {
        private ClassificationJobS3JobDefinitionArgs $;

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

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

        /**
         * @param bucketCriteria The property- and tag-based conditions that determine which S3 buckets to include or exclude from the analysis. Conflicts with `bucket_definitions`. (documented below)
         * 
         * @return builder
         * 
         */
        public Builder bucketCriteria(@Nullable Output bucketCriteria) {
            $.bucketCriteria = bucketCriteria;
            return this;
        }

        /**
         * @param bucketCriteria The property- and tag-based conditions that determine which S3 buckets to include or exclude from the analysis. Conflicts with `bucket_definitions`. (documented below)
         * 
         * @return builder
         * 
         */
        public Builder bucketCriteria(ClassificationJobS3JobDefinitionBucketCriteriaArgs bucketCriteria) {
            return bucketCriteria(Output.of(bucketCriteria));
        }

        /**
         * @param bucketDefinitions An array of objects, one for each AWS account that owns buckets to analyze. Each object specifies the account ID for an account and one or more buckets to analyze for the account. Conflicts with `bucket_criteria`. (documented below)
         * 
         * @return builder
         * 
         */
        public Builder bucketDefinitions(@Nullable Output> bucketDefinitions) {
            $.bucketDefinitions = bucketDefinitions;
            return this;
        }

        /**
         * @param bucketDefinitions An array of objects, one for each AWS account that owns buckets to analyze. Each object specifies the account ID for an account and one or more buckets to analyze for the account. Conflicts with `bucket_criteria`. (documented below)
         * 
         * @return builder
         * 
         */
        public Builder bucketDefinitions(List bucketDefinitions) {
            return bucketDefinitions(Output.of(bucketDefinitions));
        }

        /**
         * @param bucketDefinitions An array of objects, one for each AWS account that owns buckets to analyze. Each object specifies the account ID for an account and one or more buckets to analyze for the account. Conflicts with `bucket_criteria`. (documented below)
         * 
         * @return builder
         * 
         */
        public Builder bucketDefinitions(ClassificationJobS3JobDefinitionBucketDefinitionArgs... bucketDefinitions) {
            return bucketDefinitions(List.of(bucketDefinitions));
        }

        /**
         * @param scoping The property- and tag-based conditions that determine which objects to include or exclude from the analysis. (documented below)
         * 
         * @return builder
         * 
         */
        public Builder scoping(@Nullable Output scoping) {
            $.scoping = scoping;
            return this;
        }

        /**
         * @param scoping The property- and tag-based conditions that determine which objects to include or exclude from the analysis. (documented below)
         * 
         * @return builder
         * 
         */
        public Builder scoping(ClassificationJobS3JobDefinitionScopingArgs scoping) {
            return scoping(Output.of(scoping));
        }

        public ClassificationJobS3JobDefinitionArgs build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy