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

com.pulumi.mongodbatlas.PrivateLinkEndpointArgs 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.mongodbatlas;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.Objects;


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

    public static final PrivateLinkEndpointArgs Empty = new PrivateLinkEndpointArgs();

    /**
     * Required 	Unique identifier for the project.
     * 
     */
    @Import(name="projectId", required=true)
    private Output projectId;

    /**
     * @return Required 	Unique identifier for the project.
     * 
     */
    public Output projectId() {
        return this.projectId;
    }

    /**
     * Name of the cloud provider for which you want to create the private endpoint service. Atlas accepts `AWS`, `AZURE` or `GCP`.
     * 
     */
    @Import(name="providerName", required=true)
    private Output providerName;

    /**
     * @return Name of the cloud provider for which you want to create the private endpoint service. Atlas accepts `AWS`, `AZURE` or `GCP`.
     * 
     */
    public Output providerName() {
        return this.providerName;
    }

    /**
     * Cloud provider region in which you want to create the private endpoint connection.
     * Accepted values are: [AWS regions](https://docs.atlas.mongodb.com/reference/amazon-aws/#amazon-aws), [AZURE regions](https://docs.atlas.mongodb.com/reference/microsoft-azure/#microsoft-azure) and [GCP regions](https://docs.atlas.mongodb.com/reference/google-gcp/#std-label-google-gcp)
     * 
     */
    @Import(name="region", required=true)
    private Output region;

    /**
     * @return Cloud provider region in which you want to create the private endpoint connection.
     * Accepted values are: [AWS regions](https://docs.atlas.mongodb.com/reference/amazon-aws/#amazon-aws), [AZURE regions](https://docs.atlas.mongodb.com/reference/microsoft-azure/#microsoft-azure) and [GCP regions](https://docs.atlas.mongodb.com/reference/google-gcp/#std-label-google-gcp)
     * 
     */
    public Output region() {
        return this.region;
    }

    private PrivateLinkEndpointArgs() {}

    private PrivateLinkEndpointArgs(PrivateLinkEndpointArgs $) {
        this.projectId = $.projectId;
        this.providerName = $.providerName;
        this.region = $.region;
    }

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

    public static final class Builder {
        private PrivateLinkEndpointArgs $;

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

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

        /**
         * @param projectId Required 	Unique identifier for the project.
         * 
         * @return builder
         * 
         */
        public Builder projectId(Output projectId) {
            $.projectId = projectId;
            return this;
        }

        /**
         * @param projectId Required 	Unique identifier for the project.
         * 
         * @return builder
         * 
         */
        public Builder projectId(String projectId) {
            return projectId(Output.of(projectId));
        }

        /**
         * @param providerName Name of the cloud provider for which you want to create the private endpoint service. Atlas accepts `AWS`, `AZURE` or `GCP`.
         * 
         * @return builder
         * 
         */
        public Builder providerName(Output providerName) {
            $.providerName = providerName;
            return this;
        }

        /**
         * @param providerName Name of the cloud provider for which you want to create the private endpoint service. Atlas accepts `AWS`, `AZURE` or `GCP`.
         * 
         * @return builder
         * 
         */
        public Builder providerName(String providerName) {
            return providerName(Output.of(providerName));
        }

        /**
         * @param region Cloud provider region in which you want to create the private endpoint connection.
         * Accepted values are: [AWS regions](https://docs.atlas.mongodb.com/reference/amazon-aws/#amazon-aws), [AZURE regions](https://docs.atlas.mongodb.com/reference/microsoft-azure/#microsoft-azure) and [GCP regions](https://docs.atlas.mongodb.com/reference/google-gcp/#std-label-google-gcp)
         * 
         * @return builder
         * 
         */
        public Builder region(Output region) {
            $.region = region;
            return this;
        }

        /**
         * @param region Cloud provider region in which you want to create the private endpoint connection.
         * Accepted values are: [AWS regions](https://docs.atlas.mongodb.com/reference/amazon-aws/#amazon-aws), [AZURE regions](https://docs.atlas.mongodb.com/reference/microsoft-azure/#microsoft-azure) and [GCP regions](https://docs.atlas.mongodb.com/reference/google-gcp/#std-label-google-gcp)
         * 
         * @return builder
         * 
         */
        public Builder region(String region) {
            return region(Output.of(region));
        }

        public PrivateLinkEndpointArgs build() {
            if ($.projectId == null) {
                throw new MissingRequiredPropertyException("PrivateLinkEndpointArgs", "projectId");
            }
            if ($.providerName == null) {
                throw new MissingRequiredPropertyException("PrivateLinkEndpointArgs", "providerName");
            }
            if ($.region == null) {
                throw new MissingRequiredPropertyException("PrivateLinkEndpointArgs", "region");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy