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

com.pulumi.alicloud.slb.inputs.BackendServerState 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.slb.inputs;

import com.pulumi.alicloud.slb.inputs.BackendServerBackendServerArgs;
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.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final BackendServerState Empty = new BackendServerState();

    /**
     * A list of instances to added backend server in the SLB. It contains three sub-fields as `Block server` follows.
     * 
     */
    @Import(name="backendServers")
    private @Nullable Output> backendServers;

    /**
     * @return A list of instances to added backend server in the SLB. It contains three sub-fields as `Block server` follows.
     * 
     */
    public Optional>> backendServers() {
        return Optional.ofNullable(this.backendServers);
    }

    /**
     * Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
     * 
     */
    @Import(name="deleteProtectionValidation")
    private @Nullable Output deleteProtectionValidation;

    /**
     * @return Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
     * 
     */
    public Optional> deleteProtectionValidation() {
        return Optional.ofNullable(this.deleteProtectionValidation);
    }

    /**
     * ID of the load balancer.
     * 
     */
    @Import(name="loadBalancerId")
    private @Nullable Output loadBalancerId;

    /**
     * @return ID of the load balancer.
     * 
     */
    public Optional> loadBalancerId() {
        return Optional.ofNullable(this.loadBalancerId);
    }

    private BackendServerState() {}

    private BackendServerState(BackendServerState $) {
        this.backendServers = $.backendServers;
        this.deleteProtectionValidation = $.deleteProtectionValidation;
        this.loadBalancerId = $.loadBalancerId;
    }

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

    public static final class Builder {
        private BackendServerState $;

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

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

        /**
         * @param backendServers A list of instances to added backend server in the SLB. It contains three sub-fields as `Block server` follows.
         * 
         * @return builder
         * 
         */
        public Builder backendServers(@Nullable Output> backendServers) {
            $.backendServers = backendServers;
            return this;
        }

        /**
         * @param backendServers A list of instances to added backend server in the SLB. It contains three sub-fields as `Block server` follows.
         * 
         * @return builder
         * 
         */
        public Builder backendServers(List backendServers) {
            return backendServers(Output.of(backendServers));
        }

        /**
         * @param backendServers A list of instances to added backend server in the SLB. It contains three sub-fields as `Block server` follows.
         * 
         * @return builder
         * 
         */
        public Builder backendServers(BackendServerBackendServerArgs... backendServers) {
            return backendServers(List.of(backendServers));
        }

        /**
         * @param deleteProtectionValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
         * 
         * @return builder
         * 
         */
        public Builder deleteProtectionValidation(@Nullable Output deleteProtectionValidation) {
            $.deleteProtectionValidation = deleteProtectionValidation;
            return this;
        }

        /**
         * @param deleteProtectionValidation Checking DeleteProtection of SLB instance before deleting. If true, this resource will not be deleted when its SLB instance enabled DeleteProtection. Default to false.
         * 
         * @return builder
         * 
         */
        public Builder deleteProtectionValidation(Boolean deleteProtectionValidation) {
            return deleteProtectionValidation(Output.of(deleteProtectionValidation));
        }

        /**
         * @param loadBalancerId ID of the load balancer.
         * 
         * @return builder
         * 
         */
        public Builder loadBalancerId(@Nullable Output loadBalancerId) {
            $.loadBalancerId = loadBalancerId;
            return this;
        }

        /**
         * @param loadBalancerId ID of the load balancer.
         * 
         * @return builder
         * 
         */
        public Builder loadBalancerId(String loadBalancerId) {
            return loadBalancerId(Output.of(loadBalancerId));
        }

        public BackendServerState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy