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

com.pulumi.azurenative.networkcloud.inputs.BgpServiceLoadBalancerConfigurationArgs Maven / Gradle / Ivy

There is a newer version: 2.72.0
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.azurenative.networkcloud.inputs;

import com.pulumi.azurenative.networkcloud.enums.FabricPeeringEnabled;
import com.pulumi.azurenative.networkcloud.inputs.BgpAdvertisementArgs;
import com.pulumi.azurenative.networkcloud.inputs.IpAddressPoolArgs;
import com.pulumi.azurenative.networkcloud.inputs.ServiceLoadBalancerBgpPeerArgs;
import com.pulumi.core.Either;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.core.internal.Codegen;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


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

    public static final BgpServiceLoadBalancerConfigurationArgs Empty = new BgpServiceLoadBalancerConfigurationArgs();

    /**
     * The association of IP address pools to the communities and peers, allowing for announcement of IPs.
     * 
     */
    @Import(name="bgpAdvertisements")
    private @Nullable Output> bgpAdvertisements;

    /**
     * @return The association of IP address pools to the communities and peers, allowing for announcement of IPs.
     * 
     */
    public Optional>> bgpAdvertisements() {
        return Optional.ofNullable(this.bgpAdvertisements);
    }

    /**
     * The list of additional BgpPeer entities that the Kubernetes cluster will peer with. All peering must be explicitly defined.
     * 
     */
    @Import(name="bgpPeers")
    private @Nullable Output> bgpPeers;

    /**
     * @return The list of additional BgpPeer entities that the Kubernetes cluster will peer with. All peering must be explicitly defined.
     * 
     */
    public Optional>> bgpPeers() {
        return Optional.ofNullable(this.bgpPeers);
    }

    /**
     * The indicator to specify if the load balancer peers with the network fabric.
     * 
     */
    @Import(name="fabricPeeringEnabled")
    private @Nullable Output> fabricPeeringEnabled;

    /**
     * @return The indicator to specify if the load balancer peers with the network fabric.
     * 
     */
    public Optional>> fabricPeeringEnabled() {
        return Optional.ofNullable(this.fabricPeeringEnabled);
    }

    /**
     * The list of pools of IP addresses that can be allocated to Load Balancer services.
     * 
     */
    @Import(name="ipAddressPools")
    private @Nullable Output> ipAddressPools;

    /**
     * @return The list of pools of IP addresses that can be allocated to Load Balancer services.
     * 
     */
    public Optional>> ipAddressPools() {
        return Optional.ofNullable(this.ipAddressPools);
    }

    private BgpServiceLoadBalancerConfigurationArgs() {}

    private BgpServiceLoadBalancerConfigurationArgs(BgpServiceLoadBalancerConfigurationArgs $) {
        this.bgpAdvertisements = $.bgpAdvertisements;
        this.bgpPeers = $.bgpPeers;
        this.fabricPeeringEnabled = $.fabricPeeringEnabled;
        this.ipAddressPools = $.ipAddressPools;
    }

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

    public static final class Builder {
        private BgpServiceLoadBalancerConfigurationArgs $;

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

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

        /**
         * @param bgpAdvertisements The association of IP address pools to the communities and peers, allowing for announcement of IPs.
         * 
         * @return builder
         * 
         */
        public Builder bgpAdvertisements(@Nullable Output> bgpAdvertisements) {
            $.bgpAdvertisements = bgpAdvertisements;
            return this;
        }

        /**
         * @param bgpAdvertisements The association of IP address pools to the communities and peers, allowing for announcement of IPs.
         * 
         * @return builder
         * 
         */
        public Builder bgpAdvertisements(List bgpAdvertisements) {
            return bgpAdvertisements(Output.of(bgpAdvertisements));
        }

        /**
         * @param bgpAdvertisements The association of IP address pools to the communities and peers, allowing for announcement of IPs.
         * 
         * @return builder
         * 
         */
        public Builder bgpAdvertisements(BgpAdvertisementArgs... bgpAdvertisements) {
            return bgpAdvertisements(List.of(bgpAdvertisements));
        }

        /**
         * @param bgpPeers The list of additional BgpPeer entities that the Kubernetes cluster will peer with. All peering must be explicitly defined.
         * 
         * @return builder
         * 
         */
        public Builder bgpPeers(@Nullable Output> bgpPeers) {
            $.bgpPeers = bgpPeers;
            return this;
        }

        /**
         * @param bgpPeers The list of additional BgpPeer entities that the Kubernetes cluster will peer with. All peering must be explicitly defined.
         * 
         * @return builder
         * 
         */
        public Builder bgpPeers(List bgpPeers) {
            return bgpPeers(Output.of(bgpPeers));
        }

        /**
         * @param bgpPeers The list of additional BgpPeer entities that the Kubernetes cluster will peer with. All peering must be explicitly defined.
         * 
         * @return builder
         * 
         */
        public Builder bgpPeers(ServiceLoadBalancerBgpPeerArgs... bgpPeers) {
            return bgpPeers(List.of(bgpPeers));
        }

        /**
         * @param fabricPeeringEnabled The indicator to specify if the load balancer peers with the network fabric.
         * 
         * @return builder
         * 
         */
        public Builder fabricPeeringEnabled(@Nullable Output> fabricPeeringEnabled) {
            $.fabricPeeringEnabled = fabricPeeringEnabled;
            return this;
        }

        /**
         * @param fabricPeeringEnabled The indicator to specify if the load balancer peers with the network fabric.
         * 
         * @return builder
         * 
         */
        public Builder fabricPeeringEnabled(Either fabricPeeringEnabled) {
            return fabricPeeringEnabled(Output.of(fabricPeeringEnabled));
        }

        /**
         * @param fabricPeeringEnabled The indicator to specify if the load balancer peers with the network fabric.
         * 
         * @return builder
         * 
         */
        public Builder fabricPeeringEnabled(String fabricPeeringEnabled) {
            return fabricPeeringEnabled(Either.ofLeft(fabricPeeringEnabled));
        }

        /**
         * @param fabricPeeringEnabled The indicator to specify if the load balancer peers with the network fabric.
         * 
         * @return builder
         * 
         */
        public Builder fabricPeeringEnabled(FabricPeeringEnabled fabricPeeringEnabled) {
            return fabricPeeringEnabled(Either.ofRight(fabricPeeringEnabled));
        }

        /**
         * @param ipAddressPools The list of pools of IP addresses that can be allocated to Load Balancer services.
         * 
         * @return builder
         * 
         */
        public Builder ipAddressPools(@Nullable Output> ipAddressPools) {
            $.ipAddressPools = ipAddressPools;
            return this;
        }

        /**
         * @param ipAddressPools The list of pools of IP addresses that can be allocated to Load Balancer services.
         * 
         * @return builder
         * 
         */
        public Builder ipAddressPools(List ipAddressPools) {
            return ipAddressPools(Output.of(ipAddressPools));
        }

        /**
         * @param ipAddressPools The list of pools of IP addresses that can be allocated to Load Balancer services.
         * 
         * @return builder
         * 
         */
        public Builder ipAddressPools(IpAddressPoolArgs... ipAddressPools) {
            return ipAddressPools(List.of(ipAddressPools));
        }

        public BgpServiceLoadBalancerConfigurationArgs build() {
            $.fabricPeeringEnabled = Codegen.stringProp("fabricPeeringEnabled").left(FabricPeeringEnabled.class).output().arg($.fabricPeeringEnabled).def("True").getNullable();
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy