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

com.pulumi.aws.amplify.inputs.BranchState 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.amplify.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final BranchState Empty = new BranchState();

    /**
     * Unique ID for an Amplify app.
     * 
     */
    @Import(name="appId")
    private @Nullable Output appId;

    /**
     * @return Unique ID for an Amplify app.
     * 
     */
    public Optional> appId() {
        return Optional.ofNullable(this.appId);
    }

    /**
     * ARN for the branch.
     * 
     */
    @Import(name="arn")
    private @Nullable Output arn;

    /**
     * @return ARN for the branch.
     * 
     */
    public Optional> arn() {
        return Optional.ofNullable(this.arn);
    }

    /**
     * A list of custom resources that are linked to this branch.
     * 
     */
    @Import(name="associatedResources")
    private @Nullable Output> associatedResources;

    /**
     * @return A list of custom resources that are linked to this branch.
     * 
     */
    public Optional>> associatedResources() {
        return Optional.ofNullable(this.associatedResources);
    }

    /**
     * ARN for a backend environment that is part of an Amplify app.
     * 
     */
    @Import(name="backendEnvironmentArn")
    private @Nullable Output backendEnvironmentArn;

    /**
     * @return ARN for a backend environment that is part of an Amplify app.
     * 
     */
    public Optional> backendEnvironmentArn() {
        return Optional.ofNullable(this.backendEnvironmentArn);
    }

    /**
     * Basic authorization credentials for the branch.
     * 
     */
    @Import(name="basicAuthCredentials")
    private @Nullable Output basicAuthCredentials;

    /**
     * @return Basic authorization credentials for the branch.
     * 
     */
    public Optional> basicAuthCredentials() {
        return Optional.ofNullable(this.basicAuthCredentials);
    }

    /**
     * Name for the branch.
     * 
     */
    @Import(name="branchName")
    private @Nullable Output branchName;

    /**
     * @return Name for the branch.
     * 
     */
    public Optional> branchName() {
        return Optional.ofNullable(this.branchName);
    }

    /**
     * Custom domains for the branch.
     * 
     */
    @Import(name="customDomains")
    private @Nullable Output> customDomains;

    /**
     * @return Custom domains for the branch.
     * 
     */
    public Optional>> customDomains() {
        return Optional.ofNullable(this.customDomains);
    }

    /**
     * Description for the branch.
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return Description for the branch.
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * Destination branch if the branch is a pull request branch.
     * 
     */
    @Import(name="destinationBranch")
    private @Nullable Output destinationBranch;

    /**
     * @return Destination branch if the branch is a pull request branch.
     * 
     */
    public Optional> destinationBranch() {
        return Optional.ofNullable(this.destinationBranch);
    }

    /**
     * Display name for a branch. This is used as the default domain prefix.
     * 
     */
    @Import(name="displayName")
    private @Nullable Output displayName;

    /**
     * @return Display name for a branch. This is used as the default domain prefix.
     * 
     */
    public Optional> displayName() {
        return Optional.ofNullable(this.displayName);
    }

    /**
     * Enables auto building for the branch.
     * 
     */
    @Import(name="enableAutoBuild")
    private @Nullable Output enableAutoBuild;

    /**
     * @return Enables auto building for the branch.
     * 
     */
    public Optional> enableAutoBuild() {
        return Optional.ofNullable(this.enableAutoBuild);
    }

    /**
     * Enables basic authorization for the branch.
     * 
     */
    @Import(name="enableBasicAuth")
    private @Nullable Output enableBasicAuth;

    /**
     * @return Enables basic authorization for the branch.
     * 
     */
    public Optional> enableBasicAuth() {
        return Optional.ofNullable(this.enableBasicAuth);
    }

    /**
     * Enables notifications for the branch.
     * 
     */
    @Import(name="enableNotification")
    private @Nullable Output enableNotification;

    /**
     * @return Enables notifications for the branch.
     * 
     */
    public Optional> enableNotification() {
        return Optional.ofNullable(this.enableNotification);
    }

    /**
     * Enables performance mode for the branch.
     * 
     */
    @Import(name="enablePerformanceMode")
    private @Nullable Output enablePerformanceMode;

    /**
     * @return Enables performance mode for the branch.
     * 
     */
    public Optional> enablePerformanceMode() {
        return Optional.ofNullable(this.enablePerformanceMode);
    }

    /**
     * Enables pull request previews for this branch.
     * 
     */
    @Import(name="enablePullRequestPreview")
    private @Nullable Output enablePullRequestPreview;

    /**
     * @return Enables pull request previews for this branch.
     * 
     */
    public Optional> enablePullRequestPreview() {
        return Optional.ofNullable(this.enablePullRequestPreview);
    }

    /**
     * Environment variables for the branch.
     * 
     */
    @Import(name="environmentVariables")
    private @Nullable Output> environmentVariables;

    /**
     * @return Environment variables for the branch.
     * 
     */
    public Optional>> environmentVariables() {
        return Optional.ofNullable(this.environmentVariables);
    }

    /**
     * Framework for the branch.
     * 
     */
    @Import(name="framework")
    private @Nullable Output framework;

    /**
     * @return Framework for the branch.
     * 
     */
    public Optional> framework() {
        return Optional.ofNullable(this.framework);
    }

    /**
     * Amplify environment name for the pull request.
     * 
     */
    @Import(name="pullRequestEnvironmentName")
    private @Nullable Output pullRequestEnvironmentName;

    /**
     * @return Amplify environment name for the pull request.
     * 
     */
    public Optional> pullRequestEnvironmentName() {
        return Optional.ofNullable(this.pullRequestEnvironmentName);
    }

    /**
     * Source branch if the branch is a pull request branch.
     * 
     */
    @Import(name="sourceBranch")
    private @Nullable Output sourceBranch;

    /**
     * @return Source branch if the branch is a pull request branch.
     * 
     */
    public Optional> sourceBranch() {
        return Optional.ofNullable(this.sourceBranch);
    }

    /**
     * Describes the current stage for the branch. Valid values: `PRODUCTION`, `BETA`, `DEVELOPMENT`, `EXPERIMENTAL`, `PULL_REQUEST`.
     * 
     */
    @Import(name="stage")
    private @Nullable Output stage;

    /**
     * @return Describes the current stage for the branch. Valid values: `PRODUCTION`, `BETA`, `DEVELOPMENT`, `EXPERIMENTAL`, `PULL_REQUEST`.
     * 
     */
    public Optional> stage() {
        return Optional.ofNullable(this.stage);
    }

    /**
     * Key-value mapping of resource tags. 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 Key-value mapping of resource tags. 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);
    }

    /**
     * Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
     * 
     * @deprecated
     * Please use `tags` instead.
     * 
     */
    @Deprecated /* Please use `tags` instead. */
    @Import(name="tagsAll")
    private @Nullable Output> tagsAll;

    /**
     * @return Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
     * 
     * @deprecated
     * Please use `tags` instead.
     * 
     */
    @Deprecated /* Please use `tags` instead. */
    public Optional>> tagsAll() {
        return Optional.ofNullable(this.tagsAll);
    }

    /**
     * Content Time To Live (TTL) for the website in seconds.
     * 
     */
    @Import(name="ttl")
    private @Nullable Output ttl;

    /**
     * @return Content Time To Live (TTL) for the website in seconds.
     * 
     */
    public Optional> ttl() {
        return Optional.ofNullable(this.ttl);
    }

    private BranchState() {}

    private BranchState(BranchState $) {
        this.appId = $.appId;
        this.arn = $.arn;
        this.associatedResources = $.associatedResources;
        this.backendEnvironmentArn = $.backendEnvironmentArn;
        this.basicAuthCredentials = $.basicAuthCredentials;
        this.branchName = $.branchName;
        this.customDomains = $.customDomains;
        this.description = $.description;
        this.destinationBranch = $.destinationBranch;
        this.displayName = $.displayName;
        this.enableAutoBuild = $.enableAutoBuild;
        this.enableBasicAuth = $.enableBasicAuth;
        this.enableNotification = $.enableNotification;
        this.enablePerformanceMode = $.enablePerformanceMode;
        this.enablePullRequestPreview = $.enablePullRequestPreview;
        this.environmentVariables = $.environmentVariables;
        this.framework = $.framework;
        this.pullRequestEnvironmentName = $.pullRequestEnvironmentName;
        this.sourceBranch = $.sourceBranch;
        this.stage = $.stage;
        this.tags = $.tags;
        this.tagsAll = $.tagsAll;
        this.ttl = $.ttl;
    }

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

    public static final class Builder {
        private BranchState $;

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

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

        /**
         * @param appId Unique ID for an Amplify app.
         * 
         * @return builder
         * 
         */
        public Builder appId(@Nullable Output appId) {
            $.appId = appId;
            return this;
        }

        /**
         * @param appId Unique ID for an Amplify app.
         * 
         * @return builder
         * 
         */
        public Builder appId(String appId) {
            return appId(Output.of(appId));
        }

        /**
         * @param arn ARN for the branch.
         * 
         * @return builder
         * 
         */
        public Builder arn(@Nullable Output arn) {
            $.arn = arn;
            return this;
        }

        /**
         * @param arn ARN for the branch.
         * 
         * @return builder
         * 
         */
        public Builder arn(String arn) {
            return arn(Output.of(arn));
        }

        /**
         * @param associatedResources A list of custom resources that are linked to this branch.
         * 
         * @return builder
         * 
         */
        public Builder associatedResources(@Nullable Output> associatedResources) {
            $.associatedResources = associatedResources;
            return this;
        }

        /**
         * @param associatedResources A list of custom resources that are linked to this branch.
         * 
         * @return builder
         * 
         */
        public Builder associatedResources(List associatedResources) {
            return associatedResources(Output.of(associatedResources));
        }

        /**
         * @param associatedResources A list of custom resources that are linked to this branch.
         * 
         * @return builder
         * 
         */
        public Builder associatedResources(String... associatedResources) {
            return associatedResources(List.of(associatedResources));
        }

        /**
         * @param backendEnvironmentArn ARN for a backend environment that is part of an Amplify app.
         * 
         * @return builder
         * 
         */
        public Builder backendEnvironmentArn(@Nullable Output backendEnvironmentArn) {
            $.backendEnvironmentArn = backendEnvironmentArn;
            return this;
        }

        /**
         * @param backendEnvironmentArn ARN for a backend environment that is part of an Amplify app.
         * 
         * @return builder
         * 
         */
        public Builder backendEnvironmentArn(String backendEnvironmentArn) {
            return backendEnvironmentArn(Output.of(backendEnvironmentArn));
        }

        /**
         * @param basicAuthCredentials Basic authorization credentials for the branch.
         * 
         * @return builder
         * 
         */
        public Builder basicAuthCredentials(@Nullable Output basicAuthCredentials) {
            $.basicAuthCredentials = basicAuthCredentials;
            return this;
        }

        /**
         * @param basicAuthCredentials Basic authorization credentials for the branch.
         * 
         * @return builder
         * 
         */
        public Builder basicAuthCredentials(String basicAuthCredentials) {
            return basicAuthCredentials(Output.of(basicAuthCredentials));
        }

        /**
         * @param branchName Name for the branch.
         * 
         * @return builder
         * 
         */
        public Builder branchName(@Nullable Output branchName) {
            $.branchName = branchName;
            return this;
        }

        /**
         * @param branchName Name for the branch.
         * 
         * @return builder
         * 
         */
        public Builder branchName(String branchName) {
            return branchName(Output.of(branchName));
        }

        /**
         * @param customDomains Custom domains for the branch.
         * 
         * @return builder
         * 
         */
        public Builder customDomains(@Nullable Output> customDomains) {
            $.customDomains = customDomains;
            return this;
        }

        /**
         * @param customDomains Custom domains for the branch.
         * 
         * @return builder
         * 
         */
        public Builder customDomains(List customDomains) {
            return customDomains(Output.of(customDomains));
        }

        /**
         * @param customDomains Custom domains for the branch.
         * 
         * @return builder
         * 
         */
        public Builder customDomains(String... customDomains) {
            return customDomains(List.of(customDomains));
        }

        /**
         * @param description Description for the branch.
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Description for the branch.
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param destinationBranch Destination branch if the branch is a pull request branch.
         * 
         * @return builder
         * 
         */
        public Builder destinationBranch(@Nullable Output destinationBranch) {
            $.destinationBranch = destinationBranch;
            return this;
        }

        /**
         * @param destinationBranch Destination branch if the branch is a pull request branch.
         * 
         * @return builder
         * 
         */
        public Builder destinationBranch(String destinationBranch) {
            return destinationBranch(Output.of(destinationBranch));
        }

        /**
         * @param displayName Display name for a branch. This is used as the default domain prefix.
         * 
         * @return builder
         * 
         */
        public Builder displayName(@Nullable Output displayName) {
            $.displayName = displayName;
            return this;
        }

        /**
         * @param displayName Display name for a branch. This is used as the default domain prefix.
         * 
         * @return builder
         * 
         */
        public Builder displayName(String displayName) {
            return displayName(Output.of(displayName));
        }

        /**
         * @param enableAutoBuild Enables auto building for the branch.
         * 
         * @return builder
         * 
         */
        public Builder enableAutoBuild(@Nullable Output enableAutoBuild) {
            $.enableAutoBuild = enableAutoBuild;
            return this;
        }

        /**
         * @param enableAutoBuild Enables auto building for the branch.
         * 
         * @return builder
         * 
         */
        public Builder enableAutoBuild(Boolean enableAutoBuild) {
            return enableAutoBuild(Output.of(enableAutoBuild));
        }

        /**
         * @param enableBasicAuth Enables basic authorization for the branch.
         * 
         * @return builder
         * 
         */
        public Builder enableBasicAuth(@Nullable Output enableBasicAuth) {
            $.enableBasicAuth = enableBasicAuth;
            return this;
        }

        /**
         * @param enableBasicAuth Enables basic authorization for the branch.
         * 
         * @return builder
         * 
         */
        public Builder enableBasicAuth(Boolean enableBasicAuth) {
            return enableBasicAuth(Output.of(enableBasicAuth));
        }

        /**
         * @param enableNotification Enables notifications for the branch.
         * 
         * @return builder
         * 
         */
        public Builder enableNotification(@Nullable Output enableNotification) {
            $.enableNotification = enableNotification;
            return this;
        }

        /**
         * @param enableNotification Enables notifications for the branch.
         * 
         * @return builder
         * 
         */
        public Builder enableNotification(Boolean enableNotification) {
            return enableNotification(Output.of(enableNotification));
        }

        /**
         * @param enablePerformanceMode Enables performance mode for the branch.
         * 
         * @return builder
         * 
         */
        public Builder enablePerformanceMode(@Nullable Output enablePerformanceMode) {
            $.enablePerformanceMode = enablePerformanceMode;
            return this;
        }

        /**
         * @param enablePerformanceMode Enables performance mode for the branch.
         * 
         * @return builder
         * 
         */
        public Builder enablePerformanceMode(Boolean enablePerformanceMode) {
            return enablePerformanceMode(Output.of(enablePerformanceMode));
        }

        /**
         * @param enablePullRequestPreview Enables pull request previews for this branch.
         * 
         * @return builder
         * 
         */
        public Builder enablePullRequestPreview(@Nullable Output enablePullRequestPreview) {
            $.enablePullRequestPreview = enablePullRequestPreview;
            return this;
        }

        /**
         * @param enablePullRequestPreview Enables pull request previews for this branch.
         * 
         * @return builder
         * 
         */
        public Builder enablePullRequestPreview(Boolean enablePullRequestPreview) {
            return enablePullRequestPreview(Output.of(enablePullRequestPreview));
        }

        /**
         * @param environmentVariables Environment variables for the branch.
         * 
         * @return builder
         * 
         */
        public Builder environmentVariables(@Nullable Output> environmentVariables) {
            $.environmentVariables = environmentVariables;
            return this;
        }

        /**
         * @param environmentVariables Environment variables for the branch.
         * 
         * @return builder
         * 
         */
        public Builder environmentVariables(Map environmentVariables) {
            return environmentVariables(Output.of(environmentVariables));
        }

        /**
         * @param framework Framework for the branch.
         * 
         * @return builder
         * 
         */
        public Builder framework(@Nullable Output framework) {
            $.framework = framework;
            return this;
        }

        /**
         * @param framework Framework for the branch.
         * 
         * @return builder
         * 
         */
        public Builder framework(String framework) {
            return framework(Output.of(framework));
        }

        /**
         * @param pullRequestEnvironmentName Amplify environment name for the pull request.
         * 
         * @return builder
         * 
         */
        public Builder pullRequestEnvironmentName(@Nullable Output pullRequestEnvironmentName) {
            $.pullRequestEnvironmentName = pullRequestEnvironmentName;
            return this;
        }

        /**
         * @param pullRequestEnvironmentName Amplify environment name for the pull request.
         * 
         * @return builder
         * 
         */
        public Builder pullRequestEnvironmentName(String pullRequestEnvironmentName) {
            return pullRequestEnvironmentName(Output.of(pullRequestEnvironmentName));
        }

        /**
         * @param sourceBranch Source branch if the branch is a pull request branch.
         * 
         * @return builder
         * 
         */
        public Builder sourceBranch(@Nullable Output sourceBranch) {
            $.sourceBranch = sourceBranch;
            return this;
        }

        /**
         * @param sourceBranch Source branch if the branch is a pull request branch.
         * 
         * @return builder
         * 
         */
        public Builder sourceBranch(String sourceBranch) {
            return sourceBranch(Output.of(sourceBranch));
        }

        /**
         * @param stage Describes the current stage for the branch. Valid values: `PRODUCTION`, `BETA`, `DEVELOPMENT`, `EXPERIMENTAL`, `PULL_REQUEST`.
         * 
         * @return builder
         * 
         */
        public Builder stage(@Nullable Output stage) {
            $.stage = stage;
            return this;
        }

        /**
         * @param stage Describes the current stage for the branch. Valid values: `PRODUCTION`, `BETA`, `DEVELOPMENT`, `EXPERIMENTAL`, `PULL_REQUEST`.
         * 
         * @return builder
         * 
         */
        public Builder stage(String stage) {
            return stage(Output.of(stage));
        }

        /**
         * @param tags Key-value mapping of resource tags. 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 Key-value mapping of resource tags. 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));
        }

        /**
         * @param tagsAll Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
         * 
         * @return builder
         * 
         * @deprecated
         * Please use `tags` instead.
         * 
         */
        @Deprecated /* Please use `tags` instead. */
        public Builder tagsAll(@Nullable Output> tagsAll) {
            $.tagsAll = tagsAll;
            return this;
        }

        /**
         * @param tagsAll Map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
         * 
         * @return builder
         * 
         * @deprecated
         * Please use `tags` instead.
         * 
         */
        @Deprecated /* Please use `tags` instead. */
        public Builder tagsAll(Map tagsAll) {
            return tagsAll(Output.of(tagsAll));
        }

        /**
         * @param ttl Content Time To Live (TTL) for the website in seconds.
         * 
         * @return builder
         * 
         */
        public Builder ttl(@Nullable Output ttl) {
            $.ttl = ttl;
            return this;
        }

        /**
         * @param ttl Content Time To Live (TTL) for the website in seconds.
         * 
         * @return builder
         * 
         */
        public Builder ttl(String ttl) {
            return ttl(Output.of(ttl));
        }

        public BranchState build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy