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

com.pulumi.azurenative.network.outputs.GetCustomIPPrefixResult Maven / Gradle / Ivy

There is a newer version: 2.82.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.network.outputs;

import com.pulumi.azurenative.network.outputs.ExtendedLocationResponse;
import com.pulumi.azurenative.network.outputs.SubResourceResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class GetCustomIPPrefixResult {
    /**
     * @return The ASN for CIDR advertising. Should be an integer as string.
     * 
     */
    private @Nullable String asn;
    /**
     * @return Authorization message for WAN validation.
     * 
     */
    private @Nullable String authorizationMessage;
    /**
     * @return The list of all Children for IPv6 /48 CustomIpPrefix.
     * 
     */
    private List childCustomIpPrefixes;
    /**
     * @return The prefix range in CIDR notation. Should include the start address and the prefix length.
     * 
     */
    private @Nullable String cidr;
    /**
     * @return The commissioned state of the Custom IP Prefix.
     * 
     */
    private @Nullable String commissionedState;
    /**
     * @return The Parent CustomIpPrefix for IPv6 /64 CustomIpPrefix.
     * 
     */
    private @Nullable SubResourceResponse customIpPrefixParent;
    /**
     * @return A unique read-only string that changes whenever the resource is updated.
     * 
     */
    private String etag;
    /**
     * @return Whether to do express route advertise.
     * 
     */
    private @Nullable Boolean expressRouteAdvertise;
    /**
     * @return The extended location of the custom IP prefix.
     * 
     */
    private @Nullable ExtendedLocationResponse extendedLocation;
    /**
     * @return The reason why resource is in failed state.
     * 
     */
    private String failedReason;
    /**
     * @return The Geo for CIDR advertising. Should be an Geo code.
     * 
     */
    private @Nullable String geo;
    /**
     * @return Resource ID.
     * 
     */
    private @Nullable String id;
    /**
     * @return Resource location.
     * 
     */
    private @Nullable String location;
    /**
     * @return Resource name.
     * 
     */
    private String name;
    /**
     * @return Whether to Advertise the range to Internet.
     * 
     */
    private @Nullable Boolean noInternetAdvertise;
    /**
     * @return Type of custom IP prefix. Should be Singular, Parent, or Child.
     * 
     */
    private @Nullable String prefixType;
    /**
     * @return The provisioning state of the custom IP prefix resource.
     * 
     */
    private String provisioningState;
    /**
     * @return The list of all referenced PublicIpPrefixes.
     * 
     */
    private List publicIpPrefixes;
    /**
     * @return The resource GUID property of the custom IP prefix resource.
     * 
     */
    private String resourceGuid;
    /**
     * @return Signed message for WAN validation.
     * 
     */
    private @Nullable String signedMessage;
    /**
     * @return Resource tags.
     * 
     */
    private @Nullable Map tags;
    /**
     * @return Resource type.
     * 
     */
    private String type;
    /**
     * @return A list of availability zones denoting the IP allocated for the resource needs to come from.
     * 
     */
    private @Nullable List zones;

    private GetCustomIPPrefixResult() {}
    /**
     * @return The ASN for CIDR advertising. Should be an integer as string.
     * 
     */
    public Optional asn() {
        return Optional.ofNullable(this.asn);
    }
    /**
     * @return Authorization message for WAN validation.
     * 
     */
    public Optional authorizationMessage() {
        return Optional.ofNullable(this.authorizationMessage);
    }
    /**
     * @return The list of all Children for IPv6 /48 CustomIpPrefix.
     * 
     */
    public List childCustomIpPrefixes() {
        return this.childCustomIpPrefixes;
    }
    /**
     * @return The prefix range in CIDR notation. Should include the start address and the prefix length.
     * 
     */
    public Optional cidr() {
        return Optional.ofNullable(this.cidr);
    }
    /**
     * @return The commissioned state of the Custom IP Prefix.
     * 
     */
    public Optional commissionedState() {
        return Optional.ofNullable(this.commissionedState);
    }
    /**
     * @return The Parent CustomIpPrefix for IPv6 /64 CustomIpPrefix.
     * 
     */
    public Optional customIpPrefixParent() {
        return Optional.ofNullable(this.customIpPrefixParent);
    }
    /**
     * @return A unique read-only string that changes whenever the resource is updated.
     * 
     */
    public String etag() {
        return this.etag;
    }
    /**
     * @return Whether to do express route advertise.
     * 
     */
    public Optional expressRouteAdvertise() {
        return Optional.ofNullable(this.expressRouteAdvertise);
    }
    /**
     * @return The extended location of the custom IP prefix.
     * 
     */
    public Optional extendedLocation() {
        return Optional.ofNullable(this.extendedLocation);
    }
    /**
     * @return The reason why resource is in failed state.
     * 
     */
    public String failedReason() {
        return this.failedReason;
    }
    /**
     * @return The Geo for CIDR advertising. Should be an Geo code.
     * 
     */
    public Optional geo() {
        return Optional.ofNullable(this.geo);
    }
    /**
     * @return Resource ID.
     * 
     */
    public Optional id() {
        return Optional.ofNullable(this.id);
    }
    /**
     * @return Resource location.
     * 
     */
    public Optional location() {
        return Optional.ofNullable(this.location);
    }
    /**
     * @return Resource name.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return Whether to Advertise the range to Internet.
     * 
     */
    public Optional noInternetAdvertise() {
        return Optional.ofNullable(this.noInternetAdvertise);
    }
    /**
     * @return Type of custom IP prefix. Should be Singular, Parent, or Child.
     * 
     */
    public Optional prefixType() {
        return Optional.ofNullable(this.prefixType);
    }
    /**
     * @return The provisioning state of the custom IP prefix resource.
     * 
     */
    public String provisioningState() {
        return this.provisioningState;
    }
    /**
     * @return The list of all referenced PublicIpPrefixes.
     * 
     */
    public List publicIpPrefixes() {
        return this.publicIpPrefixes;
    }
    /**
     * @return The resource GUID property of the custom IP prefix resource.
     * 
     */
    public String resourceGuid() {
        return this.resourceGuid;
    }
    /**
     * @return Signed message for WAN validation.
     * 
     */
    public Optional signedMessage() {
        return Optional.ofNullable(this.signedMessage);
    }
    /**
     * @return Resource tags.
     * 
     */
    public Map tags() {
        return this.tags == null ? Map.of() : this.tags;
    }
    /**
     * @return Resource type.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return A list of availability zones denoting the IP allocated for the resource needs to come from.
     * 
     */
    public List zones() {
        return this.zones == null ? List.of() : this.zones;
    }

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

    public static Builder builder(GetCustomIPPrefixResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable String asn;
        private @Nullable String authorizationMessage;
        private List childCustomIpPrefixes;
        private @Nullable String cidr;
        private @Nullable String commissionedState;
        private @Nullable SubResourceResponse customIpPrefixParent;
        private String etag;
        private @Nullable Boolean expressRouteAdvertise;
        private @Nullable ExtendedLocationResponse extendedLocation;
        private String failedReason;
        private @Nullable String geo;
        private @Nullable String id;
        private @Nullable String location;
        private String name;
        private @Nullable Boolean noInternetAdvertise;
        private @Nullable String prefixType;
        private String provisioningState;
        private List publicIpPrefixes;
        private String resourceGuid;
        private @Nullable String signedMessage;
        private @Nullable Map tags;
        private String type;
        private @Nullable List zones;
        public Builder() {}
        public Builder(GetCustomIPPrefixResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.asn = defaults.asn;
    	      this.authorizationMessage = defaults.authorizationMessage;
    	      this.childCustomIpPrefixes = defaults.childCustomIpPrefixes;
    	      this.cidr = defaults.cidr;
    	      this.commissionedState = defaults.commissionedState;
    	      this.customIpPrefixParent = defaults.customIpPrefixParent;
    	      this.etag = defaults.etag;
    	      this.expressRouteAdvertise = defaults.expressRouteAdvertise;
    	      this.extendedLocation = defaults.extendedLocation;
    	      this.failedReason = defaults.failedReason;
    	      this.geo = defaults.geo;
    	      this.id = defaults.id;
    	      this.location = defaults.location;
    	      this.name = defaults.name;
    	      this.noInternetAdvertise = defaults.noInternetAdvertise;
    	      this.prefixType = defaults.prefixType;
    	      this.provisioningState = defaults.provisioningState;
    	      this.publicIpPrefixes = defaults.publicIpPrefixes;
    	      this.resourceGuid = defaults.resourceGuid;
    	      this.signedMessage = defaults.signedMessage;
    	      this.tags = defaults.tags;
    	      this.type = defaults.type;
    	      this.zones = defaults.zones;
        }

        @CustomType.Setter
        public Builder asn(@Nullable String asn) {

            this.asn = asn;
            return this;
        }
        @CustomType.Setter
        public Builder authorizationMessage(@Nullable String authorizationMessage) {

            this.authorizationMessage = authorizationMessage;
            return this;
        }
        @CustomType.Setter
        public Builder childCustomIpPrefixes(List childCustomIpPrefixes) {
            if (childCustomIpPrefixes == null) {
              throw new MissingRequiredPropertyException("GetCustomIPPrefixResult", "childCustomIpPrefixes");
            }
            this.childCustomIpPrefixes = childCustomIpPrefixes;
            return this;
        }
        public Builder childCustomIpPrefixes(SubResourceResponse... childCustomIpPrefixes) {
            return childCustomIpPrefixes(List.of(childCustomIpPrefixes));
        }
        @CustomType.Setter
        public Builder cidr(@Nullable String cidr) {

            this.cidr = cidr;
            return this;
        }
        @CustomType.Setter
        public Builder commissionedState(@Nullable String commissionedState) {

            this.commissionedState = commissionedState;
            return this;
        }
        @CustomType.Setter
        public Builder customIpPrefixParent(@Nullable SubResourceResponse customIpPrefixParent) {

            this.customIpPrefixParent = customIpPrefixParent;
            return this;
        }
        @CustomType.Setter
        public Builder etag(String etag) {
            if (etag == null) {
              throw new MissingRequiredPropertyException("GetCustomIPPrefixResult", "etag");
            }
            this.etag = etag;
            return this;
        }
        @CustomType.Setter
        public Builder expressRouteAdvertise(@Nullable Boolean expressRouteAdvertise) {

            this.expressRouteAdvertise = expressRouteAdvertise;
            return this;
        }
        @CustomType.Setter
        public Builder extendedLocation(@Nullable ExtendedLocationResponse extendedLocation) {

            this.extendedLocation = extendedLocation;
            return this;
        }
        @CustomType.Setter
        public Builder failedReason(String failedReason) {
            if (failedReason == null) {
              throw new MissingRequiredPropertyException("GetCustomIPPrefixResult", "failedReason");
            }
            this.failedReason = failedReason;
            return this;
        }
        @CustomType.Setter
        public Builder geo(@Nullable String geo) {

            this.geo = geo;
            return this;
        }
        @CustomType.Setter
        public Builder id(@Nullable String id) {

            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder location(@Nullable String location) {

            this.location = location;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetCustomIPPrefixResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder noInternetAdvertise(@Nullable Boolean noInternetAdvertise) {

            this.noInternetAdvertise = noInternetAdvertise;
            return this;
        }
        @CustomType.Setter
        public Builder prefixType(@Nullable String prefixType) {

            this.prefixType = prefixType;
            return this;
        }
        @CustomType.Setter
        public Builder provisioningState(String provisioningState) {
            if (provisioningState == null) {
              throw new MissingRequiredPropertyException("GetCustomIPPrefixResult", "provisioningState");
            }
            this.provisioningState = provisioningState;
            return this;
        }
        @CustomType.Setter
        public Builder publicIpPrefixes(List publicIpPrefixes) {
            if (publicIpPrefixes == null) {
              throw new MissingRequiredPropertyException("GetCustomIPPrefixResult", "publicIpPrefixes");
            }
            this.publicIpPrefixes = publicIpPrefixes;
            return this;
        }
        public Builder publicIpPrefixes(SubResourceResponse... publicIpPrefixes) {
            return publicIpPrefixes(List.of(publicIpPrefixes));
        }
        @CustomType.Setter
        public Builder resourceGuid(String resourceGuid) {
            if (resourceGuid == null) {
              throw new MissingRequiredPropertyException("GetCustomIPPrefixResult", "resourceGuid");
            }
            this.resourceGuid = resourceGuid;
            return this;
        }
        @CustomType.Setter
        public Builder signedMessage(@Nullable String signedMessage) {

            this.signedMessage = signedMessage;
            return this;
        }
        @CustomType.Setter
        public Builder tags(@Nullable Map tags) {

            this.tags = tags;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetCustomIPPrefixResult", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder zones(@Nullable List zones) {

            this.zones = zones;
            return this;
        }
        public Builder zones(String... zones) {
            return zones(List.of(zones));
        }
        public GetCustomIPPrefixResult build() {
            final var _resultValue = new GetCustomIPPrefixResult();
            _resultValue.asn = asn;
            _resultValue.authorizationMessage = authorizationMessage;
            _resultValue.childCustomIpPrefixes = childCustomIpPrefixes;
            _resultValue.cidr = cidr;
            _resultValue.commissionedState = commissionedState;
            _resultValue.customIpPrefixParent = customIpPrefixParent;
            _resultValue.etag = etag;
            _resultValue.expressRouteAdvertise = expressRouteAdvertise;
            _resultValue.extendedLocation = extendedLocation;
            _resultValue.failedReason = failedReason;
            _resultValue.geo = geo;
            _resultValue.id = id;
            _resultValue.location = location;
            _resultValue.name = name;
            _resultValue.noInternetAdvertise = noInternetAdvertise;
            _resultValue.prefixType = prefixType;
            _resultValue.provisioningState = provisioningState;
            _resultValue.publicIpPrefixes = publicIpPrefixes;
            _resultValue.resourceGuid = resourceGuid;
            _resultValue.signedMessage = signedMessage;
            _resultValue.tags = tags;
            _resultValue.type = type;
            _resultValue.zones = zones;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy