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

com.pulumi.aws.sagemaker.FlowDefinitionArgs 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.sagemaker;

import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopActivationConfigArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopConfigArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionHumanLoopRequestSourceArgs;
import com.pulumi.aws.sagemaker.inputs.FlowDefinitionOutputConfigArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final FlowDefinitionArgs Empty = new FlowDefinitionArgs();

    /**
     * The name of your flow definition.
     * 
     */
    @Import(name="flowDefinitionName", required=true)
    private Output flowDefinitionName;

    /**
     * @return The name of your flow definition.
     * 
     */
    public Output flowDefinitionName() {
        return this.flowDefinitionName;
    }

    /**
     * An object containing information about the events that trigger a human workflow. See Human Loop Activation Config details below.
     * 
     */
    @Import(name="humanLoopActivationConfig")
    private @Nullable Output humanLoopActivationConfig;

    /**
     * @return An object containing information about the events that trigger a human workflow. See Human Loop Activation Config details below.
     * 
     */
    public Optional> humanLoopActivationConfig() {
        return Optional.ofNullable(this.humanLoopActivationConfig);
    }

    /**
     * An object containing information about the tasks the human reviewers will perform. See Human Loop Config details below.
     * 
     */
    @Import(name="humanLoopConfig", required=true)
    private Output humanLoopConfig;

    /**
     * @return An object containing information about the tasks the human reviewers will perform. See Human Loop Config details below.
     * 
     */
    public Output humanLoopConfig() {
        return this.humanLoopConfig;
    }

    /**
     * Container for configuring the source of human task requests. Use to specify if Amazon Rekognition or Amazon Textract is used as an integration source. See Human Loop Request Source details below.
     * 
     */
    @Import(name="humanLoopRequestSource")
    private @Nullable Output humanLoopRequestSource;

    /**
     * @return Container for configuring the source of human task requests. Use to specify if Amazon Rekognition or Amazon Textract is used as an integration source. See Human Loop Request Source details below.
     * 
     */
    public Optional> humanLoopRequestSource() {
        return Optional.ofNullable(this.humanLoopRequestSource);
    }

    /**
     * An object containing information about where the human review results will be uploaded. See Output Config details below.
     * 
     */
    @Import(name="outputConfig", required=true)
    private Output outputConfig;

    /**
     * @return An object containing information about where the human review results will be uploaded. See Output Config details below.
     * 
     */
    public Output outputConfig() {
        return this.outputConfig;
    }

    /**
     * The Amazon Resource Name (ARN) of the role needed to call other services on your behalf.
     * 
     */
    @Import(name="roleArn", required=true)
    private Output roleArn;

    /**
     * @return The Amazon Resource Name (ARN) of the role needed to call other services on your behalf.
     * 
     */
    public Output roleArn() {
        return this.roleArn;
    }

    /**
     * A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
     * 
     */
    @Import(name="tags")
    private @Nullable Output> tags;

    /**
     * @return A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
     * 
     */
    public Optional>> tags() {
        return Optional.ofNullable(this.tags);
    }

    private FlowDefinitionArgs() {}

    private FlowDefinitionArgs(FlowDefinitionArgs $) {
        this.flowDefinitionName = $.flowDefinitionName;
        this.humanLoopActivationConfig = $.humanLoopActivationConfig;
        this.humanLoopConfig = $.humanLoopConfig;
        this.humanLoopRequestSource = $.humanLoopRequestSource;
        this.outputConfig = $.outputConfig;
        this.roleArn = $.roleArn;
        this.tags = $.tags;
    }

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

    public static final class Builder {
        private FlowDefinitionArgs $;

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

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

        /**
         * @param flowDefinitionName The name of your flow definition.
         * 
         * @return builder
         * 
         */
        public Builder flowDefinitionName(Output flowDefinitionName) {
            $.flowDefinitionName = flowDefinitionName;
            return this;
        }

        /**
         * @param flowDefinitionName The name of your flow definition.
         * 
         * @return builder
         * 
         */
        public Builder flowDefinitionName(String flowDefinitionName) {
            return flowDefinitionName(Output.of(flowDefinitionName));
        }

        /**
         * @param humanLoopActivationConfig An object containing information about the events that trigger a human workflow. See Human Loop Activation Config details below.
         * 
         * @return builder
         * 
         */
        public Builder humanLoopActivationConfig(@Nullable Output humanLoopActivationConfig) {
            $.humanLoopActivationConfig = humanLoopActivationConfig;
            return this;
        }

        /**
         * @param humanLoopActivationConfig An object containing information about the events that trigger a human workflow. See Human Loop Activation Config details below.
         * 
         * @return builder
         * 
         */
        public Builder humanLoopActivationConfig(FlowDefinitionHumanLoopActivationConfigArgs humanLoopActivationConfig) {
            return humanLoopActivationConfig(Output.of(humanLoopActivationConfig));
        }

        /**
         * @param humanLoopConfig An object containing information about the tasks the human reviewers will perform. See Human Loop Config details below.
         * 
         * @return builder
         * 
         */
        public Builder humanLoopConfig(Output humanLoopConfig) {
            $.humanLoopConfig = humanLoopConfig;
            return this;
        }

        /**
         * @param humanLoopConfig An object containing information about the tasks the human reviewers will perform. See Human Loop Config details below.
         * 
         * @return builder
         * 
         */
        public Builder humanLoopConfig(FlowDefinitionHumanLoopConfigArgs humanLoopConfig) {
            return humanLoopConfig(Output.of(humanLoopConfig));
        }

        /**
         * @param humanLoopRequestSource Container for configuring the source of human task requests. Use to specify if Amazon Rekognition or Amazon Textract is used as an integration source. See Human Loop Request Source details below.
         * 
         * @return builder
         * 
         */
        public Builder humanLoopRequestSource(@Nullable Output humanLoopRequestSource) {
            $.humanLoopRequestSource = humanLoopRequestSource;
            return this;
        }

        /**
         * @param humanLoopRequestSource Container for configuring the source of human task requests. Use to specify if Amazon Rekognition or Amazon Textract is used as an integration source. See Human Loop Request Source details below.
         * 
         * @return builder
         * 
         */
        public Builder humanLoopRequestSource(FlowDefinitionHumanLoopRequestSourceArgs humanLoopRequestSource) {
            return humanLoopRequestSource(Output.of(humanLoopRequestSource));
        }

        /**
         * @param outputConfig An object containing information about where the human review results will be uploaded. See Output Config details below.
         * 
         * @return builder
         * 
         */
        public Builder outputConfig(Output outputConfig) {
            $.outputConfig = outputConfig;
            return this;
        }

        /**
         * @param outputConfig An object containing information about where the human review results will be uploaded. See Output Config details below.
         * 
         * @return builder
         * 
         */
        public Builder outputConfig(FlowDefinitionOutputConfigArgs outputConfig) {
            return outputConfig(Output.of(outputConfig));
        }

        /**
         * @param roleArn The Amazon Resource Name (ARN) of the role needed to call other services on your behalf.
         * 
         * @return builder
         * 
         */
        public Builder roleArn(Output roleArn) {
            $.roleArn = roleArn;
            return this;
        }

        /**
         * @param roleArn The Amazon Resource Name (ARN) of the role needed to call other services on your behalf.
         * 
         * @return builder
         * 
         */
        public Builder roleArn(String roleArn) {
            return roleArn(Output.of(roleArn));
        }

        /**
         * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
         * 
         * @return builder
         * 
         */
        public Builder tags(@Nullable Output> tags) {
            $.tags = tags;
            return this;
        }

        /**
         * @param tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
         * 
         * @return builder
         * 
         */
        public Builder tags(Map tags) {
            return tags(Output.of(tags));
        }

        public FlowDefinitionArgs build() {
            if ($.flowDefinitionName == null) {
                throw new MissingRequiredPropertyException("FlowDefinitionArgs", "flowDefinitionName");
            }
            if ($.humanLoopConfig == null) {
                throw new MissingRequiredPropertyException("FlowDefinitionArgs", "humanLoopConfig");
            }
            if ($.outputConfig == null) {
                throw new MissingRequiredPropertyException("FlowDefinitionArgs", "outputConfig");
            }
            if ($.roleArn == null) {
                throw new MissingRequiredPropertyException("FlowDefinitionArgs", "roleArn");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy