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

com.pulumi.mongodbatlas.ProjectApiKeyArgs 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 com.pulumi.mongodbatlas.inputs.ProjectApiKeyProjectAssignmentArgs;
import java.lang.String;
import java.util.List;
import java.util.Objects;


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

    public static final ProjectApiKeyArgs Empty = new ProjectApiKeyArgs();

    /**
     * Description of this Project API key.
     * 
     */
    @Import(name="description", required=true)
    private Output description;

    /**
     * @return Description of this Project API key.
     * 
     */
    public Output description() {
        return this.description;
    }

    @Import(name="projectAssignments", required=true)
    private Output> projectAssignments;

    public Output> projectAssignments() {
        return this.projectAssignments;
    }

    private ProjectApiKeyArgs() {}

    private ProjectApiKeyArgs(ProjectApiKeyArgs $) {
        this.description = $.description;
        this.projectAssignments = $.projectAssignments;
    }

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

    public static final class Builder {
        private ProjectApiKeyArgs $;

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

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

        /**
         * @param description Description of this Project API key.
         * 
         * @return builder
         * 
         */
        public Builder description(Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Description of this Project API key.
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        public Builder projectAssignments(Output> projectAssignments) {
            $.projectAssignments = projectAssignments;
            return this;
        }

        public Builder projectAssignments(List projectAssignments) {
            return projectAssignments(Output.of(projectAssignments));
        }

        public Builder projectAssignments(ProjectApiKeyProjectAssignmentArgs... projectAssignments) {
            return projectAssignments(List.of(projectAssignments));
        }

        public ProjectApiKeyArgs build() {
            if ($.description == null) {
                throw new MissingRequiredPropertyException("ProjectApiKeyArgs", "description");
            }
            if ($.projectAssignments == null) {
                throw new MissingRequiredPropertyException("ProjectApiKeyArgs", "projectAssignments");
            }
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy