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

com.pulumi.azurenative.managednetworkfabric.inputs.Layer3ConfigurationArgs Maven / Gradle / Ivy

There is a newer version: 2.78.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.managednetworkfabric.inputs;

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


/**
 * layer3Configuration
 * 
 */
public final class Layer3ConfigurationArgs extends com.pulumi.resources.ResourceArgs {

    public static final Layer3ConfigurationArgs Empty = new Layer3ConfigurationArgs();

    /**
     * exportRoutePolicyId
     * 
     */
    @Import(name="exportRoutePolicyId")
    private @Nullable Output exportRoutePolicyId;

    /**
     * @return exportRoutePolicyId
     * 
     */
    public Optional> exportRoutePolicyId() {
        return Optional.ofNullable(this.exportRoutePolicyId);
    }

    /**
     * importRoutePolicyId
     * 
     */
    @Import(name="importRoutePolicyId")
    private @Nullable Output importRoutePolicyId;

    /**
     * @return importRoutePolicyId
     * 
     */
    public Optional> importRoutePolicyId() {
        return Optional.ofNullable(this.importRoutePolicyId);
    }

    /**
     * ASN of PE devices for CE/PE connectivity.Example : 28
     * 
     */
    @Import(name="peerASN")
    private @Nullable Output peerASN;

    /**
     * @return ASN of PE devices for CE/PE connectivity.Example : 28
     * 
     */
    public Optional> peerASN() {
        return Optional.ofNullable(this.peerASN);
    }

    /**
     * IPv4 Address Prefix of CE-PE interconnect links. Example: 172.31.0.0/31. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
     * 
     */
    @Import(name="primaryIpv4Prefix")
    private @Nullable Output primaryIpv4Prefix;

    /**
     * @return IPv4 Address Prefix of CE-PE interconnect links. Example: 172.31.0.0/31. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
     * 
     */
    public Optional> primaryIpv4Prefix() {
        return Optional.ofNullable(this.primaryIpv4Prefix);
    }

    /**
     * IPv6 Address Prefix of CE-PE interconnect links. Example: 3FFE:FFFF:0:CD30::a0/126. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
     * 
     */
    @Import(name="primaryIpv6Prefix")
    private @Nullable Output primaryIpv6Prefix;

    /**
     * @return IPv6 Address Prefix of CE-PE interconnect links. Example: 3FFE:FFFF:0:CD30::a0/126. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
     * 
     */
    public Optional> primaryIpv6Prefix() {
        return Optional.ofNullable(this.primaryIpv6Prefix);
    }

    /**
     * Secondary IPv4 Address Prefix of CE-PE interconnect links. Example: 172.31.0.20/31. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
     * 
     */
    @Import(name="secondaryIpv4Prefix")
    private @Nullable Output secondaryIpv4Prefix;

    /**
     * @return Secondary IPv4 Address Prefix of CE-PE interconnect links. Example: 172.31.0.20/31. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
     * 
     */
    public Optional> secondaryIpv4Prefix() {
        return Optional.ofNullable(this.secondaryIpv4Prefix);
    }

    /**
     * Secondary IPv6 Address Prefix of CE-PE interconnect links. Example: 3FFE:FFFF:0:CD30::a4/126. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
     * 
     */
    @Import(name="secondaryIpv6Prefix")
    private @Nullable Output secondaryIpv6Prefix;

    /**
     * @return Secondary IPv6 Address Prefix of CE-PE interconnect links. Example: 3FFE:FFFF:0:CD30::a4/126. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
     * 
     */
    public Optional> secondaryIpv6Prefix() {
        return Optional.ofNullable(this.secondaryIpv6Prefix);
    }

    /**
     * VLAN for CE/PE Layer 3 connectivity.Example : 501
     * 
     */
    @Import(name="vlanId")
    private @Nullable Output vlanId;

    /**
     * @return VLAN for CE/PE Layer 3 connectivity.Example : 501
     * 
     */
    public Optional> vlanId() {
        return Optional.ofNullable(this.vlanId);
    }

    private Layer3ConfigurationArgs() {}

    private Layer3ConfigurationArgs(Layer3ConfigurationArgs $) {
        this.exportRoutePolicyId = $.exportRoutePolicyId;
        this.importRoutePolicyId = $.importRoutePolicyId;
        this.peerASN = $.peerASN;
        this.primaryIpv4Prefix = $.primaryIpv4Prefix;
        this.primaryIpv6Prefix = $.primaryIpv6Prefix;
        this.secondaryIpv4Prefix = $.secondaryIpv4Prefix;
        this.secondaryIpv6Prefix = $.secondaryIpv6Prefix;
        this.vlanId = $.vlanId;
    }

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

    public static final class Builder {
        private Layer3ConfigurationArgs $;

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

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

        /**
         * @param exportRoutePolicyId exportRoutePolicyId
         * 
         * @return builder
         * 
         */
        public Builder exportRoutePolicyId(@Nullable Output exportRoutePolicyId) {
            $.exportRoutePolicyId = exportRoutePolicyId;
            return this;
        }

        /**
         * @param exportRoutePolicyId exportRoutePolicyId
         * 
         * @return builder
         * 
         */
        public Builder exportRoutePolicyId(String exportRoutePolicyId) {
            return exportRoutePolicyId(Output.of(exportRoutePolicyId));
        }

        /**
         * @param importRoutePolicyId importRoutePolicyId
         * 
         * @return builder
         * 
         */
        public Builder importRoutePolicyId(@Nullable Output importRoutePolicyId) {
            $.importRoutePolicyId = importRoutePolicyId;
            return this;
        }

        /**
         * @param importRoutePolicyId importRoutePolicyId
         * 
         * @return builder
         * 
         */
        public Builder importRoutePolicyId(String importRoutePolicyId) {
            return importRoutePolicyId(Output.of(importRoutePolicyId));
        }

        /**
         * @param peerASN ASN of PE devices for CE/PE connectivity.Example : 28
         * 
         * @return builder
         * 
         */
        public Builder peerASN(@Nullable Output peerASN) {
            $.peerASN = peerASN;
            return this;
        }

        /**
         * @param peerASN ASN of PE devices for CE/PE connectivity.Example : 28
         * 
         * @return builder
         * 
         */
        public Builder peerASN(Integer peerASN) {
            return peerASN(Output.of(peerASN));
        }

        /**
         * @param primaryIpv4Prefix IPv4 Address Prefix of CE-PE interconnect links. Example: 172.31.0.0/31. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
         * 
         * @return builder
         * 
         */
        public Builder primaryIpv4Prefix(@Nullable Output primaryIpv4Prefix) {
            $.primaryIpv4Prefix = primaryIpv4Prefix;
            return this;
        }

        /**
         * @param primaryIpv4Prefix IPv4 Address Prefix of CE-PE interconnect links. Example: 172.31.0.0/31. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
         * 
         * @return builder
         * 
         */
        public Builder primaryIpv4Prefix(String primaryIpv4Prefix) {
            return primaryIpv4Prefix(Output.of(primaryIpv4Prefix));
        }

        /**
         * @param primaryIpv6Prefix IPv6 Address Prefix of CE-PE interconnect links. Example: 3FFE:FFFF:0:CD30::a0/126. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
         * 
         * @return builder
         * 
         */
        public Builder primaryIpv6Prefix(@Nullable Output primaryIpv6Prefix) {
            $.primaryIpv6Prefix = primaryIpv6Prefix;
            return this;
        }

        /**
         * @param primaryIpv6Prefix IPv6 Address Prefix of CE-PE interconnect links. Example: 3FFE:FFFF:0:CD30::a0/126. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
         * 
         * @return builder
         * 
         */
        public Builder primaryIpv6Prefix(String primaryIpv6Prefix) {
            return primaryIpv6Prefix(Output.of(primaryIpv6Prefix));
        }

        /**
         * @param secondaryIpv4Prefix Secondary IPv4 Address Prefix of CE-PE interconnect links. Example: 172.31.0.20/31. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
         * 
         * @return builder
         * 
         */
        public Builder secondaryIpv4Prefix(@Nullable Output secondaryIpv4Prefix) {
            $.secondaryIpv4Prefix = secondaryIpv4Prefix;
            return this;
        }

        /**
         * @param secondaryIpv4Prefix Secondary IPv4 Address Prefix of CE-PE interconnect links. Example: 172.31.0.20/31. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
         * 
         * @return builder
         * 
         */
        public Builder secondaryIpv4Prefix(String secondaryIpv4Prefix) {
            return secondaryIpv4Prefix(Output.of(secondaryIpv4Prefix));
        }

        /**
         * @param secondaryIpv6Prefix Secondary IPv6 Address Prefix of CE-PE interconnect links. Example: 3FFE:FFFF:0:CD30::a4/126. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
         * 
         * @return builder
         * 
         */
        public Builder secondaryIpv6Prefix(@Nullable Output secondaryIpv6Prefix) {
            $.secondaryIpv6Prefix = secondaryIpv6Prefix;
            return this;
        }

        /**
         * @param secondaryIpv6Prefix Secondary IPv6 Address Prefix of CE-PE interconnect links. Example: 3FFE:FFFF:0:CD30::a4/126. The values can be specified at the time of creation or can be updated afterwards. Any update to the values post-provisioning may disrupt traffic. The 1st and 3rd IPs are to be configured on CE1 and CE2 for Option B interfaces. The 2nd and 4th IPs are to be configured on PE1 and PE2 for Option B interfaces.
         * 
         * @return builder
         * 
         */
        public Builder secondaryIpv6Prefix(String secondaryIpv6Prefix) {
            return secondaryIpv6Prefix(Output.of(secondaryIpv6Prefix));
        }

        /**
         * @param vlanId VLAN for CE/PE Layer 3 connectivity.Example : 501
         * 
         * @return builder
         * 
         */
        public Builder vlanId(@Nullable Output vlanId) {
            $.vlanId = vlanId;
            return this;
        }

        /**
         * @param vlanId VLAN for CE/PE Layer 3 connectivity.Example : 501
         * 
         * @return builder
         * 
         */
        public Builder vlanId(Integer vlanId) {
            return vlanId(Output.of(vlanId));
        }

        public Layer3ConfigurationArgs build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy