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

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

import com.pulumi.aws.sagemaker.inputs.ModelContainerModelDataSourceS3DataSourceModelAccessConfigArgs;
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 ModelContainerModelDataSourceS3DataSourceArgs extends com.pulumi.resources.ResourceArgs {

    public static final ModelContainerModelDataSourceS3DataSourceArgs Empty = new ModelContainerModelDataSourceS3DataSourceArgs();

    /**
     * How the model data is prepared. Allowed values are: `None` and `Gzip`.
     * 
     */
    @Import(name="compressionType", required=true)
    private Output compressionType;

    /**
     * @return How the model data is prepared. Allowed values are: `None` and `Gzip`.
     * 
     */
    public Output compressionType() {
        return this.compressionType;
    }

    /**
     * Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the [`model_access_config` configuration block]. see Model Access Config.
     * 
     */
    @Import(name="modelAccessConfig")
    private @Nullable Output modelAccessConfig;

    /**
     * @return Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the [`model_access_config` configuration block]. see Model Access Config.
     * 
     */
    public Optional> modelAccessConfig() {
        return Optional.ofNullable(this.modelAccessConfig);
    }

    /**
     * The type of model data to deploy. Allowed values are: `S3Object` and `S3Prefix`.
     * 
     */
    @Import(name="s3DataType", required=true)
    private Output s3DataType;

    /**
     * @return The type of model data to deploy. Allowed values are: `S3Object` and `S3Prefix`.
     * 
     */
    public Output s3DataType() {
        return this.s3DataType;
    }

    /**
     * The S3 path of model data to deploy.
     * 
     */
    @Import(name="s3Uri", required=true)
    private Output s3Uri;

    /**
     * @return The S3 path of model data to deploy.
     * 
     */
    public Output s3Uri() {
        return this.s3Uri;
    }

    private ModelContainerModelDataSourceS3DataSourceArgs() {}

    private ModelContainerModelDataSourceS3DataSourceArgs(ModelContainerModelDataSourceS3DataSourceArgs $) {
        this.compressionType = $.compressionType;
        this.modelAccessConfig = $.modelAccessConfig;
        this.s3DataType = $.s3DataType;
        this.s3Uri = $.s3Uri;
    }

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

    public static final class Builder {
        private ModelContainerModelDataSourceS3DataSourceArgs $;

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

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

        /**
         * @param compressionType How the model data is prepared. Allowed values are: `None` and `Gzip`.
         * 
         * @return builder
         * 
         */
        public Builder compressionType(Output compressionType) {
            $.compressionType = compressionType;
            return this;
        }

        /**
         * @param compressionType How the model data is prepared. Allowed values are: `None` and `Gzip`.
         * 
         * @return builder
         * 
         */
        public Builder compressionType(String compressionType) {
            return compressionType(Output.of(compressionType));
        }

        /**
         * @param modelAccessConfig Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the [`model_access_config` configuration block]. see Model Access Config.
         * 
         * @return builder
         * 
         */
        public Builder modelAccessConfig(@Nullable Output modelAccessConfig) {
            $.modelAccessConfig = modelAccessConfig;
            return this;
        }

        /**
         * @param modelAccessConfig Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the [`model_access_config` configuration block]. see Model Access Config.
         * 
         * @return builder
         * 
         */
        public Builder modelAccessConfig(ModelContainerModelDataSourceS3DataSourceModelAccessConfigArgs modelAccessConfig) {
            return modelAccessConfig(Output.of(modelAccessConfig));
        }

        /**
         * @param s3DataType The type of model data to deploy. Allowed values are: `S3Object` and `S3Prefix`.
         * 
         * @return builder
         * 
         */
        public Builder s3DataType(Output s3DataType) {
            $.s3DataType = s3DataType;
            return this;
        }

        /**
         * @param s3DataType The type of model data to deploy. Allowed values are: `S3Object` and `S3Prefix`.
         * 
         * @return builder
         * 
         */
        public Builder s3DataType(String s3DataType) {
            return s3DataType(Output.of(s3DataType));
        }

        /**
         * @param s3Uri The S3 path of model data to deploy.
         * 
         * @return builder
         * 
         */
        public Builder s3Uri(Output s3Uri) {
            $.s3Uri = s3Uri;
            return this;
        }

        /**
         * @param s3Uri The S3 path of model data to deploy.
         * 
         * @return builder
         * 
         */
        public Builder s3Uri(String s3Uri) {
            return s3Uri(Output.of(s3Uri));
        }

        public ModelContainerModelDataSourceS3DataSourceArgs build() {
            if ($.compressionType == null) {
                throw new MissingRequiredPropertyException("ModelContainerModelDataSourceS3DataSourceArgs", "compressionType");
            }
            if ($.s3DataType == null) {
                throw new MissingRequiredPropertyException("ModelContainerModelDataSourceS3DataSourceArgs", "s3DataType");
            }
            if ($.s3Uri == null) {
                throw new MissingRequiredPropertyException("ModelContainerModelDataSourceS3DataSourceArgs", "s3Uri");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy