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

com.pulumi.alicloud.mse.inputs.GatewayState 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.mse.inputs;

import com.pulumi.alicloud.mse.inputs.GatewaySlbListArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
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 GatewayState extends com.pulumi.resources.ResourceArgs {

    public static final GatewayState Empty = new GatewayState();

    /**
     * The backup vswitch id.
     * 
     */
    @Import(name="backupVswitchId")
    private @Nullable Output backupVswitchId;

    /**
     * @return The backup vswitch id.
     * 
     */
    public Optional> backupVswitchId() {
        return Optional.ofNullable(this.backupVswitchId);
    }

    /**
     * Whether to delete the SLB purchased on behalf of the gateway at the same time.
     * 
     */
    @Import(name="deleteSlb")
    private @Nullable Output deleteSlb;

    /**
     * @return Whether to delete the SLB purchased on behalf of the gateway at the same time.
     * 
     */
    public Optional> deleteSlb() {
        return Optional.ofNullable(this.deleteSlb);
    }

    /**
     * Whether the enterprise security group type.
     * 
     */
    @Import(name="enterpriseSecurityGroup")
    private @Nullable Output enterpriseSecurityGroup;

    /**
     * @return Whether the enterprise security group type.
     * 
     */
    public Optional> enterpriseSecurityGroup() {
        return Optional.ofNullable(this.enterpriseSecurityGroup);
    }

    /**
     * The name of the Gateway .
     * 
     */
    @Import(name="gatewayName")
    private @Nullable Output gatewayName;

    /**
     * @return The name of the Gateway .
     * 
     */
    public Optional> gatewayName() {
        return Optional.ofNullable(this.gatewayName);
    }

    /**
     * Public network SLB specifications.
     * 
     */
    @Import(name="internetSlbSpec")
    private @Nullable Output internetSlbSpec;

    /**
     * @return Public network SLB specifications.
     * 
     */
    public Optional> internetSlbSpec() {
        return Optional.ofNullable(this.internetSlbSpec);
    }

    /**
     * Number of Gateway Nodes.
     * 
     */
    @Import(name="replica")
    private @Nullable Output replica;

    /**
     * @return Number of Gateway Nodes.
     * 
     */
    public Optional> replica() {
        return Optional.ofNullable(this.replica);
    }

    /**
     * A list of gateway Slb.
     * 
     */
    @Import(name="slbLists")
    private @Nullable Output> slbLists;

    /**
     * @return A list of gateway Slb.
     * 
     */
    public Optional>> slbLists() {
        return Optional.ofNullable(this.slbLists);
    }

    /**
     * Private network SLB specifications.
     * 
     */
    @Import(name="slbSpec")
    private @Nullable Output slbSpec;

    /**
     * @return Private network SLB specifications.
     * 
     */
    public Optional> slbSpec() {
        return Optional.ofNullable(this.slbSpec);
    }

    /**
     * Gateway Node Specifications. Valid values: `MSE_GTW_2_4_200_c`, `MSE_GTW_4_8_200_c`, `MSE_GTW_8_16_200_c`, `MSE_GTW_16_32_200_c`.
     * 
     */
    @Import(name="spec")
    private @Nullable Output spec;

    /**
     * @return Gateway Node Specifications. Valid values: `MSE_GTW_2_4_200_c`, `MSE_GTW_4_8_200_c`, `MSE_GTW_8_16_200_c`, `MSE_GTW_16_32_200_c`.
     * 
     */
    public Optional> spec() {
        return Optional.ofNullable(this.spec);
    }

    /**
     * The status of the gateway.
     * 
     */
    @Import(name="status")
    private @Nullable Output status;

    /**
     * @return The status of the gateway.
     * 
     */
    public Optional> status() {
        return Optional.ofNullable(this.status);
    }

    /**
     * The ID of the vpc.
     * 
     */
    @Import(name="vpcId")
    private @Nullable Output vpcId;

    /**
     * @return The ID of the vpc.
     * 
     */
    public Optional> vpcId() {
        return Optional.ofNullable(this.vpcId);
    }

    /**
     * The ID of the vswitch.
     * 
     */
    @Import(name="vswitchId")
    private @Nullable Output vswitchId;

    /**
     * @return The ID of the vswitch.
     * 
     */
    public Optional> vswitchId() {
        return Optional.ofNullable(this.vswitchId);
    }

    private GatewayState() {}

    private GatewayState(GatewayState $) {
        this.backupVswitchId = $.backupVswitchId;
        this.deleteSlb = $.deleteSlb;
        this.enterpriseSecurityGroup = $.enterpriseSecurityGroup;
        this.gatewayName = $.gatewayName;
        this.internetSlbSpec = $.internetSlbSpec;
        this.replica = $.replica;
        this.slbLists = $.slbLists;
        this.slbSpec = $.slbSpec;
        this.spec = $.spec;
        this.status = $.status;
        this.vpcId = $.vpcId;
        this.vswitchId = $.vswitchId;
    }

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

    public static final class Builder {
        private GatewayState $;

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

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

        /**
         * @param backupVswitchId The backup vswitch id.
         * 
         * @return builder
         * 
         */
        public Builder backupVswitchId(@Nullable Output backupVswitchId) {
            $.backupVswitchId = backupVswitchId;
            return this;
        }

        /**
         * @param backupVswitchId The backup vswitch id.
         * 
         * @return builder
         * 
         */
        public Builder backupVswitchId(String backupVswitchId) {
            return backupVswitchId(Output.of(backupVswitchId));
        }

        /**
         * @param deleteSlb Whether to delete the SLB purchased on behalf of the gateway at the same time.
         * 
         * @return builder
         * 
         */
        public Builder deleteSlb(@Nullable Output deleteSlb) {
            $.deleteSlb = deleteSlb;
            return this;
        }

        /**
         * @param deleteSlb Whether to delete the SLB purchased on behalf of the gateway at the same time.
         * 
         * @return builder
         * 
         */
        public Builder deleteSlb(Boolean deleteSlb) {
            return deleteSlb(Output.of(deleteSlb));
        }

        /**
         * @param enterpriseSecurityGroup Whether the enterprise security group type.
         * 
         * @return builder
         * 
         */
        public Builder enterpriseSecurityGroup(@Nullable Output enterpriseSecurityGroup) {
            $.enterpriseSecurityGroup = enterpriseSecurityGroup;
            return this;
        }

        /**
         * @param enterpriseSecurityGroup Whether the enterprise security group type.
         * 
         * @return builder
         * 
         */
        public Builder enterpriseSecurityGroup(Boolean enterpriseSecurityGroup) {
            return enterpriseSecurityGroup(Output.of(enterpriseSecurityGroup));
        }

        /**
         * @param gatewayName The name of the Gateway .
         * 
         * @return builder
         * 
         */
        public Builder gatewayName(@Nullable Output gatewayName) {
            $.gatewayName = gatewayName;
            return this;
        }

        /**
         * @param gatewayName The name of the Gateway .
         * 
         * @return builder
         * 
         */
        public Builder gatewayName(String gatewayName) {
            return gatewayName(Output.of(gatewayName));
        }

        /**
         * @param internetSlbSpec Public network SLB specifications.
         * 
         * @return builder
         * 
         */
        public Builder internetSlbSpec(@Nullable Output internetSlbSpec) {
            $.internetSlbSpec = internetSlbSpec;
            return this;
        }

        /**
         * @param internetSlbSpec Public network SLB specifications.
         * 
         * @return builder
         * 
         */
        public Builder internetSlbSpec(String internetSlbSpec) {
            return internetSlbSpec(Output.of(internetSlbSpec));
        }

        /**
         * @param replica Number of Gateway Nodes.
         * 
         * @return builder
         * 
         */
        public Builder replica(@Nullable Output replica) {
            $.replica = replica;
            return this;
        }

        /**
         * @param replica Number of Gateway Nodes.
         * 
         * @return builder
         * 
         */
        public Builder replica(Integer replica) {
            return replica(Output.of(replica));
        }

        /**
         * @param slbLists A list of gateway Slb.
         * 
         * @return builder
         * 
         */
        public Builder slbLists(@Nullable Output> slbLists) {
            $.slbLists = slbLists;
            return this;
        }

        /**
         * @param slbLists A list of gateway Slb.
         * 
         * @return builder
         * 
         */
        public Builder slbLists(List slbLists) {
            return slbLists(Output.of(slbLists));
        }

        /**
         * @param slbLists A list of gateway Slb.
         * 
         * @return builder
         * 
         */
        public Builder slbLists(GatewaySlbListArgs... slbLists) {
            return slbLists(List.of(slbLists));
        }

        /**
         * @param slbSpec Private network SLB specifications.
         * 
         * @return builder
         * 
         */
        public Builder slbSpec(@Nullable Output slbSpec) {
            $.slbSpec = slbSpec;
            return this;
        }

        /**
         * @param slbSpec Private network SLB specifications.
         * 
         * @return builder
         * 
         */
        public Builder slbSpec(String slbSpec) {
            return slbSpec(Output.of(slbSpec));
        }

        /**
         * @param spec Gateway Node Specifications. Valid values: `MSE_GTW_2_4_200_c`, `MSE_GTW_4_8_200_c`, `MSE_GTW_8_16_200_c`, `MSE_GTW_16_32_200_c`.
         * 
         * @return builder
         * 
         */
        public Builder spec(@Nullable Output spec) {
            $.spec = spec;
            return this;
        }

        /**
         * @param spec Gateway Node Specifications. Valid values: `MSE_GTW_2_4_200_c`, `MSE_GTW_4_8_200_c`, `MSE_GTW_8_16_200_c`, `MSE_GTW_16_32_200_c`.
         * 
         * @return builder
         * 
         */
        public Builder spec(String spec) {
            return spec(Output.of(spec));
        }

        /**
         * @param status The status of the gateway.
         * 
         * @return builder
         * 
         */
        public Builder status(@Nullable Output status) {
            $.status = status;
            return this;
        }

        /**
         * @param status The status of the gateway.
         * 
         * @return builder
         * 
         */
        public Builder status(String status) {
            return status(Output.of(status));
        }

        /**
         * @param vpcId The ID of the vpc.
         * 
         * @return builder
         * 
         */
        public Builder vpcId(@Nullable Output vpcId) {
            $.vpcId = vpcId;
            return this;
        }

        /**
         * @param vpcId The ID of the vpc.
         * 
         * @return builder
         * 
         */
        public Builder vpcId(String vpcId) {
            return vpcId(Output.of(vpcId));
        }

        /**
         * @param vswitchId The ID of the vswitch.
         * 
         * @return builder
         * 
         */
        public Builder vswitchId(@Nullable Output vswitchId) {
            $.vswitchId = vswitchId;
            return this;
        }

        /**
         * @param vswitchId The ID of the vswitch.
         * 
         * @return builder
         * 
         */
        public Builder vswitchId(String vswitchId) {
            return vswitchId(Output.of(vswitchId));
        }

        public GatewayState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy