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

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

// *** 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.PerimeterBasedAccessRuleResponse;
import com.pulumi.azurenative.network.outputs.SubscriptionIdResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
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 GetNspAccessRuleResult {
    /**
     * @return Inbound address prefixes (IPv4/IPv6)
     * 
     */
    private @Nullable List addressPrefixes;
    /**
     * @return Direction that specifies whether the access rules is inbound/outbound.
     * 
     */
    private @Nullable String direction;
    /**
     * @return Outbound rules email address format.
     * 
     */
    private @Nullable List emailAddresses;
    /**
     * @return Outbound rules fully qualified domain name format.
     * 
     */
    private @Nullable List fullyQualifiedDomainNames;
    /**
     * @return Resource ID.
     * 
     */
    private String id;
    /**
     * @return Resource location.
     * 
     */
    private @Nullable String location;
    /**
     * @return Resource name.
     * 
     */
    private String name;
    /**
     * @return Rule specified by the perimeter id.
     * 
     */
    private List networkSecurityPerimeters;
    /**
     * @return Outbound rules phone number format.
     * 
     */
    private @Nullable List phoneNumbers;
    /**
     * @return The provisioning state of the scope assignment resource.
     * 
     */
    private String provisioningState;
    /**
     * @return List of subscription ids
     * 
     */
    private @Nullable List subscriptions;
    /**
     * @return Resource tags.
     * 
     */
    private @Nullable Map tags;
    /**
     * @return Resource type.
     * 
     */
    private String type;

    private GetNspAccessRuleResult() {}
    /**
     * @return Inbound address prefixes (IPv4/IPv6)
     * 
     */
    public List addressPrefixes() {
        return this.addressPrefixes == null ? List.of() : this.addressPrefixes;
    }
    /**
     * @return Direction that specifies whether the access rules is inbound/outbound.
     * 
     */
    public Optional direction() {
        return Optional.ofNullable(this.direction);
    }
    /**
     * @return Outbound rules email address format.
     * 
     */
    public List emailAddresses() {
        return this.emailAddresses == null ? List.of() : this.emailAddresses;
    }
    /**
     * @return Outbound rules fully qualified domain name format.
     * 
     */
    public List fullyQualifiedDomainNames() {
        return this.fullyQualifiedDomainNames == null ? List.of() : this.fullyQualifiedDomainNames;
    }
    /**
     * @return Resource ID.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Resource location.
     * 
     */
    public Optional location() {
        return Optional.ofNullable(this.location);
    }
    /**
     * @return Resource name.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return Rule specified by the perimeter id.
     * 
     */
    public List networkSecurityPerimeters() {
        return this.networkSecurityPerimeters;
    }
    /**
     * @return Outbound rules phone number format.
     * 
     */
    public List phoneNumbers() {
        return this.phoneNumbers == null ? List.of() : this.phoneNumbers;
    }
    /**
     * @return The provisioning state of the scope assignment resource.
     * 
     */
    public String provisioningState() {
        return this.provisioningState;
    }
    /**
     * @return List of subscription ids
     * 
     */
    public List subscriptions() {
        return this.subscriptions == null ? List.of() : this.subscriptions;
    }
    /**
     * @return Resource tags.
     * 
     */
    public Map tags() {
        return this.tags == null ? Map.of() : this.tags;
    }
    /**
     * @return Resource type.
     * 
     */
    public String type() {
        return this.type;
    }

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

    public static Builder builder(GetNspAccessRuleResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List addressPrefixes;
        private @Nullable String direction;
        private @Nullable List emailAddresses;
        private @Nullable List fullyQualifiedDomainNames;
        private String id;
        private @Nullable String location;
        private String name;
        private List networkSecurityPerimeters;
        private @Nullable List phoneNumbers;
        private String provisioningState;
        private @Nullable List subscriptions;
        private @Nullable Map tags;
        private String type;
        public Builder() {}
        public Builder(GetNspAccessRuleResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.addressPrefixes = defaults.addressPrefixes;
    	      this.direction = defaults.direction;
    	      this.emailAddresses = defaults.emailAddresses;
    	      this.fullyQualifiedDomainNames = defaults.fullyQualifiedDomainNames;
    	      this.id = defaults.id;
    	      this.location = defaults.location;
    	      this.name = defaults.name;
    	      this.networkSecurityPerimeters = defaults.networkSecurityPerimeters;
    	      this.phoneNumbers = defaults.phoneNumbers;
    	      this.provisioningState = defaults.provisioningState;
    	      this.subscriptions = defaults.subscriptions;
    	      this.tags = defaults.tags;
    	      this.type = defaults.type;
        }

        @CustomType.Setter
        public Builder addressPrefixes(@Nullable List addressPrefixes) {

            this.addressPrefixes = addressPrefixes;
            return this;
        }
        public Builder addressPrefixes(String... addressPrefixes) {
            return addressPrefixes(List.of(addressPrefixes));
        }
        @CustomType.Setter
        public Builder direction(@Nullable String direction) {

            this.direction = direction;
            return this;
        }
        @CustomType.Setter
        public Builder emailAddresses(@Nullable List emailAddresses) {

            this.emailAddresses = emailAddresses;
            return this;
        }
        public Builder emailAddresses(String... emailAddresses) {
            return emailAddresses(List.of(emailAddresses));
        }
        @CustomType.Setter
        public Builder fullyQualifiedDomainNames(@Nullable List fullyQualifiedDomainNames) {

            this.fullyQualifiedDomainNames = fullyQualifiedDomainNames;
            return this;
        }
        public Builder fullyQualifiedDomainNames(String... fullyQualifiedDomainNames) {
            return fullyQualifiedDomainNames(List.of(fullyQualifiedDomainNames));
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetNspAccessRuleResult", "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("GetNspAccessRuleResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder networkSecurityPerimeters(List networkSecurityPerimeters) {
            if (networkSecurityPerimeters == null) {
              throw new MissingRequiredPropertyException("GetNspAccessRuleResult", "networkSecurityPerimeters");
            }
            this.networkSecurityPerimeters = networkSecurityPerimeters;
            return this;
        }
        public Builder networkSecurityPerimeters(PerimeterBasedAccessRuleResponse... networkSecurityPerimeters) {
            return networkSecurityPerimeters(List.of(networkSecurityPerimeters));
        }
        @CustomType.Setter
        public Builder phoneNumbers(@Nullable List phoneNumbers) {

            this.phoneNumbers = phoneNumbers;
            return this;
        }
        public Builder phoneNumbers(String... phoneNumbers) {
            return phoneNumbers(List.of(phoneNumbers));
        }
        @CustomType.Setter
        public Builder provisioningState(String provisioningState) {
            if (provisioningState == null) {
              throw new MissingRequiredPropertyException("GetNspAccessRuleResult", "provisioningState");
            }
            this.provisioningState = provisioningState;
            return this;
        }
        @CustomType.Setter
        public Builder subscriptions(@Nullable List subscriptions) {

            this.subscriptions = subscriptions;
            return this;
        }
        public Builder subscriptions(SubscriptionIdResponse... subscriptions) {
            return subscriptions(List.of(subscriptions));
        }
        @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("GetNspAccessRuleResult", "type");
            }
            this.type = type;
            return this;
        }
        public GetNspAccessRuleResult build() {
            final var _resultValue = new GetNspAccessRuleResult();
            _resultValue.addressPrefixes = addressPrefixes;
            _resultValue.direction = direction;
            _resultValue.emailAddresses = emailAddresses;
            _resultValue.fullyQualifiedDomainNames = fullyQualifiedDomainNames;
            _resultValue.id = id;
            _resultValue.location = location;
            _resultValue.name = name;
            _resultValue.networkSecurityPerimeters = networkSecurityPerimeters;
            _resultValue.phoneNumbers = phoneNumbers;
            _resultValue.provisioningState = provisioningState;
            _resultValue.subscriptions = subscriptions;
            _resultValue.tags = tags;
            _resultValue.type = type;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy