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

com.pulumi.alicloud.edas.inputs.ApplicationState Maven / Gradle / Ivy

There is a newer version: 3.63.0-alpha.1727424957
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.alicloud.edas.inputs;

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


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

    public static final ApplicationState Empty = new ApplicationState();

    /**
     * Name of your EDAS application. Only letters '-' '_' and numbers are allowed. The length cannot exceed 36 characters.
     * 
     */
    @Import(name="applicationName")
    private @Nullable Output applicationName;

    /**
     * @return Name of your EDAS application. Only letters '-' '_' and numbers are allowed. The length cannot exceed 36 characters.
     * 
     */
    public Optional> applicationName() {
        return Optional.ofNullable(this.applicationName);
    }

    /**
     * The package ID of Enterprise Distributed Application Service (EDAS) Container, which can be retrieved by calling container version list interface ListBuildPack or the "Pack ID" column in container version list. When creating High-speed Service Framework (HSF) application, this parameter is required.
     * 
     */
    @Import(name="buildPackId")
    private @Nullable Output buildPackId;

    /**
     * @return The package ID of Enterprise Distributed Application Service (EDAS) Container, which can be retrieved by calling container version list interface ListBuildPack or the "Pack ID" column in container version list. When creating High-speed Service Framework (HSF) application, this parameter is required.
     * 
     */
    public Optional> buildPackId() {
        return Optional.ofNullable(this.buildPackId);
    }

    /**
     * The ID of the cluster that you want to create the application. The default cluster will be used if you do not specify this parameter.
     * 
     */
    @Import(name="clusterId")
    private @Nullable Output clusterId;

    /**
     * @return The ID of the cluster that you want to create the application. The default cluster will be used if you do not specify this parameter.
     * 
     */
    public Optional> clusterId() {
        return Optional.ofNullable(this.clusterId);
    }

    /**
     * The description of the application that you want to create.
     * 
     */
    @Import(name="descriotion")
    private @Nullable Output descriotion;

    /**
     * @return The description of the application that you want to create.
     * 
     */
    public Optional> descriotion() {
        return Optional.ofNullable(this.descriotion);
    }

    /**
     * The ID of the Elastic Compute Unit (ECU) where you want to deploy the application. Type: List.
     * 
     */
    @Import(name="ecuInfos")
    private @Nullable Output> ecuInfos;

    /**
     * @return The ID of the Elastic Compute Unit (ECU) where you want to deploy the application. Type: List.
     * 
     */
    public Optional>> ecuInfos() {
        return Optional.ofNullable(this.ecuInfos);
    }

    /**
     * The ID of the instance group where the application is going to be deployed. Set this parameter to all if you want to deploy the application to all groups.
     * 
     */
    @Import(name="groupId")
    private @Nullable Output groupId;

    /**
     * @return The ID of the instance group where the application is going to be deployed. Set this parameter to all if you want to deploy the application to all groups.
     * 
     */
    public Optional> groupId() {
        return Optional.ofNullable(this.groupId);
    }

    /**
     * The URL for health checking of the application.
     * 
     */
    @Import(name="healthCheckUrl")
    private @Nullable Output healthCheckUrl;

    /**
     * @return The URL for health checking of the application.
     * 
     */
    public Optional> healthCheckUrl() {
        return Optional.ofNullable(this.healthCheckUrl);
    }

    /**
     * The ID of the namespace where you want to create the application. You can call the ListUserDefineRegion operation to query the namespace ID.
     * 
     */
    @Import(name="logicalRegionId")
    private @Nullable Output logicalRegionId;

    /**
     * @return The ID of the namespace where you want to create the application. You can call the ListUserDefineRegion operation to query the namespace ID.
     * 
     */
    public Optional> logicalRegionId() {
        return Optional.ofNullable(this.logicalRegionId);
    }

    /**
     * The type of the package for the deployment of the application that you want to create. The valid values are: WAR and JAR. We strongly recommend you to set this parameter when creating the application.
     * 
     */
    @Import(name="packageType")
    private @Nullable Output packageType;

    /**
     * @return The type of the package for the deployment of the application that you want to create. The valid values are: WAR and JAR. We strongly recommend you to set this parameter when creating the application.
     * 
     */
    public Optional> packageType() {
        return Optional.ofNullable(this.packageType);
    }

    /**
     * The version of the application that you want to deploy. It must be unique for every application. The length cannot exceed 64 characters. We recommended you to use a timestamp.
     * 
     */
    @Import(name="packageVersion")
    private @Nullable Output packageVersion;

    /**
     * @return The version of the application that you want to deploy. It must be unique for every application. The length cannot exceed 64 characters. We recommended you to use a timestamp.
     * 
     */
    public Optional> packageVersion() {
        return Optional.ofNullable(this.packageVersion);
    }

    /**
     * The address to store the uploaded web application (WAR) package for application deployment. This parameter is required when the deployType parameter is set as url.
     * 
     */
    @Import(name="warUrl")
    private @Nullable Output warUrl;

    /**
     * @return The address to store the uploaded web application (WAR) package for application deployment. This parameter is required when the deployType parameter is set as url.
     * 
     */
    public Optional> warUrl() {
        return Optional.ofNullable(this.warUrl);
    }

    private ApplicationState() {}

    private ApplicationState(ApplicationState $) {
        this.applicationName = $.applicationName;
        this.buildPackId = $.buildPackId;
        this.clusterId = $.clusterId;
        this.descriotion = $.descriotion;
        this.ecuInfos = $.ecuInfos;
        this.groupId = $.groupId;
        this.healthCheckUrl = $.healthCheckUrl;
        this.logicalRegionId = $.logicalRegionId;
        this.packageType = $.packageType;
        this.packageVersion = $.packageVersion;
        this.warUrl = $.warUrl;
    }

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

    public static final class Builder {
        private ApplicationState $;

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

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

        /**
         * @param applicationName Name of your EDAS application. Only letters '-' '_' and numbers are allowed. The length cannot exceed 36 characters.
         * 
         * @return builder
         * 
         */
        public Builder applicationName(@Nullable Output applicationName) {
            $.applicationName = applicationName;
            return this;
        }

        /**
         * @param applicationName Name of your EDAS application. Only letters '-' '_' and numbers are allowed. The length cannot exceed 36 characters.
         * 
         * @return builder
         * 
         */
        public Builder applicationName(String applicationName) {
            return applicationName(Output.of(applicationName));
        }

        /**
         * @param buildPackId The package ID of Enterprise Distributed Application Service (EDAS) Container, which can be retrieved by calling container version list interface ListBuildPack or the "Pack ID" column in container version list. When creating High-speed Service Framework (HSF) application, this parameter is required.
         * 
         * @return builder
         * 
         */
        public Builder buildPackId(@Nullable Output buildPackId) {
            $.buildPackId = buildPackId;
            return this;
        }

        /**
         * @param buildPackId The package ID of Enterprise Distributed Application Service (EDAS) Container, which can be retrieved by calling container version list interface ListBuildPack or the "Pack ID" column in container version list. When creating High-speed Service Framework (HSF) application, this parameter is required.
         * 
         * @return builder
         * 
         */
        public Builder buildPackId(Integer buildPackId) {
            return buildPackId(Output.of(buildPackId));
        }

        /**
         * @param clusterId The ID of the cluster that you want to create the application. The default cluster will be used if you do not specify this parameter.
         * 
         * @return builder
         * 
         */
        public Builder clusterId(@Nullable Output clusterId) {
            $.clusterId = clusterId;
            return this;
        }

        /**
         * @param clusterId The ID of the cluster that you want to create the application. The default cluster will be used if you do not specify this parameter.
         * 
         * @return builder
         * 
         */
        public Builder clusterId(String clusterId) {
            return clusterId(Output.of(clusterId));
        }

        /**
         * @param descriotion The description of the application that you want to create.
         * 
         * @return builder
         * 
         */
        public Builder descriotion(@Nullable Output descriotion) {
            $.descriotion = descriotion;
            return this;
        }

        /**
         * @param descriotion The description of the application that you want to create.
         * 
         * @return builder
         * 
         */
        public Builder descriotion(String descriotion) {
            return descriotion(Output.of(descriotion));
        }

        /**
         * @param ecuInfos The ID of the Elastic Compute Unit (ECU) where you want to deploy the application. Type: List.
         * 
         * @return builder
         * 
         */
        public Builder ecuInfos(@Nullable Output> ecuInfos) {
            $.ecuInfos = ecuInfos;
            return this;
        }

        /**
         * @param ecuInfos The ID of the Elastic Compute Unit (ECU) where you want to deploy the application. Type: List.
         * 
         * @return builder
         * 
         */
        public Builder ecuInfos(List ecuInfos) {
            return ecuInfos(Output.of(ecuInfos));
        }

        /**
         * @param ecuInfos The ID of the Elastic Compute Unit (ECU) where you want to deploy the application. Type: List.
         * 
         * @return builder
         * 
         */
        public Builder ecuInfos(String... ecuInfos) {
            return ecuInfos(List.of(ecuInfos));
        }

        /**
         * @param groupId The ID of the instance group where the application is going to be deployed. Set this parameter to all if you want to deploy the application to all groups.
         * 
         * @return builder
         * 
         */
        public Builder groupId(@Nullable Output groupId) {
            $.groupId = groupId;
            return this;
        }

        /**
         * @param groupId The ID of the instance group where the application is going to be deployed. Set this parameter to all if you want to deploy the application to all groups.
         * 
         * @return builder
         * 
         */
        public Builder groupId(String groupId) {
            return groupId(Output.of(groupId));
        }

        /**
         * @param healthCheckUrl The URL for health checking of the application.
         * 
         * @return builder
         * 
         */
        public Builder healthCheckUrl(@Nullable Output healthCheckUrl) {
            $.healthCheckUrl = healthCheckUrl;
            return this;
        }

        /**
         * @param healthCheckUrl The URL for health checking of the application.
         * 
         * @return builder
         * 
         */
        public Builder healthCheckUrl(String healthCheckUrl) {
            return healthCheckUrl(Output.of(healthCheckUrl));
        }

        /**
         * @param logicalRegionId The ID of the namespace where you want to create the application. You can call the ListUserDefineRegion operation to query the namespace ID.
         * 
         * @return builder
         * 
         */
        public Builder logicalRegionId(@Nullable Output logicalRegionId) {
            $.logicalRegionId = logicalRegionId;
            return this;
        }

        /**
         * @param logicalRegionId The ID of the namespace where you want to create the application. You can call the ListUserDefineRegion operation to query the namespace ID.
         * 
         * @return builder
         * 
         */
        public Builder logicalRegionId(String logicalRegionId) {
            return logicalRegionId(Output.of(logicalRegionId));
        }

        /**
         * @param packageType The type of the package for the deployment of the application that you want to create. The valid values are: WAR and JAR. We strongly recommend you to set this parameter when creating the application.
         * 
         * @return builder
         * 
         */
        public Builder packageType(@Nullable Output packageType) {
            $.packageType = packageType;
            return this;
        }

        /**
         * @param packageType The type of the package for the deployment of the application that you want to create. The valid values are: WAR and JAR. We strongly recommend you to set this parameter when creating the application.
         * 
         * @return builder
         * 
         */
        public Builder packageType(String packageType) {
            return packageType(Output.of(packageType));
        }

        /**
         * @param packageVersion The version of the application that you want to deploy. It must be unique for every application. The length cannot exceed 64 characters. We recommended you to use a timestamp.
         * 
         * @return builder
         * 
         */
        public Builder packageVersion(@Nullable Output packageVersion) {
            $.packageVersion = packageVersion;
            return this;
        }

        /**
         * @param packageVersion The version of the application that you want to deploy. It must be unique for every application. The length cannot exceed 64 characters. We recommended you to use a timestamp.
         * 
         * @return builder
         * 
         */
        public Builder packageVersion(String packageVersion) {
            return packageVersion(Output.of(packageVersion));
        }

        /**
         * @param warUrl The address to store the uploaded web application (WAR) package for application deployment. This parameter is required when the deployType parameter is set as url.
         * 
         * @return builder
         * 
         */
        public Builder warUrl(@Nullable Output warUrl) {
            $.warUrl = warUrl;
            return this;
        }

        /**
         * @param warUrl The address to store the uploaded web application (WAR) package for application deployment. This parameter is required when the deployType parameter is set as url.
         * 
         * @return builder
         * 
         */
        public Builder warUrl(String warUrl) {
            return warUrl(Output.of(warUrl));
        }

        public ApplicationState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy