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

com.pulumi.azurenative.network.outputs.GetNetworkVirtualApplianceResult 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.DelegationPropertiesResponse;
import com.pulumi.azurenative.network.outputs.ManagedServiceIdentityResponse;
import com.pulumi.azurenative.network.outputs.PartnerManagedResourcePropertiesResponse;
import com.pulumi.azurenative.network.outputs.SubResourceResponse;
import com.pulumi.azurenative.network.outputs.VirtualApplianceAdditionalNicPropertiesResponse;
import com.pulumi.azurenative.network.outputs.VirtualApplianceNicPropertiesResponse;
import com.pulumi.azurenative.network.outputs.VirtualApplianceSkuPropertiesResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Double;
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 GetNetworkVirtualApplianceResult {
    /**
     * @return Details required for Additional Network Interface.
     * 
     */
    private @Nullable List additionalNics;
    /**
     * @return Address Prefix.
     * 
     */
    private String addressPrefix;
    /**
     * @return BootStrapConfigurationBlobs storage URLs.
     * 
     */
    private @Nullable List bootStrapConfigurationBlobs;
    /**
     * @return CloudInitConfiguration string in plain text.
     * 
     */
    private @Nullable String cloudInitConfiguration;
    /**
     * @return CloudInitConfigurationBlob storage URLs.
     * 
     */
    private @Nullable List cloudInitConfigurationBlobs;
    /**
     * @return The delegation for the Virtual Appliance
     * 
     */
    private @Nullable DelegationPropertiesResponse delegation;
    /**
     * @return The deployment type. PartnerManaged for the SaaS NVA
     * 
     */
    private String deploymentType;
    /**
     * @return A unique read-only string that changes whenever the resource is updated.
     * 
     */
    private String etag;
    /**
     * @return Resource ID.
     * 
     */
    private @Nullable String id;
    /**
     * @return The service principal that has read access to cloud-init and config blob.
     * 
     */
    private @Nullable ManagedServiceIdentityResponse identity;
    /**
     * @return List of references to InboundSecurityRules.
     * 
     */
    private List inboundSecurityRules;
    /**
     * @return Resource location.
     * 
     */
    private @Nullable String location;
    /**
     * @return Resource name.
     * 
     */
    private String name;
    /**
     * @return Network Virtual Appliance SKU.
     * 
     */
    private @Nullable VirtualApplianceSkuPropertiesResponse nvaSku;
    /**
     * @return The delegation for the Virtual Appliance
     * 
     */
    private @Nullable PartnerManagedResourcePropertiesResponse partnerManagedResource;
    /**
     * @return The provisioning state of the resource.
     * 
     */
    private String provisioningState;
    /**
     * @return Public key for SSH login.
     * 
     */
    private @Nullable String sshPublicKey;
    /**
     * @return Resource tags.
     * 
     */
    private @Nullable Map tags;
    /**
     * @return Resource type.
     * 
     */
    private String type;
    /**
     * @return VirtualAppliance ASN. Microsoft private, public and IANA reserved ASN are not supported.
     * 
     */
    private @Nullable Double virtualApplianceAsn;
    /**
     * @return List of Virtual Appliance Network Interfaces.
     * 
     */
    private List virtualApplianceNics;
    /**
     * @return List of references to VirtualApplianceSite.
     * 
     */
    private List virtualApplianceSites;
    /**
     * @return The Virtual Hub where Network Virtual Appliance is being deployed.
     * 
     */
    private @Nullable SubResourceResponse virtualHub;

    private GetNetworkVirtualApplianceResult() {}
    /**
     * @return Details required for Additional Network Interface.
     * 
     */
    public List additionalNics() {
        return this.additionalNics == null ? List.of() : this.additionalNics;
    }
    /**
     * @return Address Prefix.
     * 
     */
    public String addressPrefix() {
        return this.addressPrefix;
    }
    /**
     * @return BootStrapConfigurationBlobs storage URLs.
     * 
     */
    public List bootStrapConfigurationBlobs() {
        return this.bootStrapConfigurationBlobs == null ? List.of() : this.bootStrapConfigurationBlobs;
    }
    /**
     * @return CloudInitConfiguration string in plain text.
     * 
     */
    public Optional cloudInitConfiguration() {
        return Optional.ofNullable(this.cloudInitConfiguration);
    }
    /**
     * @return CloudInitConfigurationBlob storage URLs.
     * 
     */
    public List cloudInitConfigurationBlobs() {
        return this.cloudInitConfigurationBlobs == null ? List.of() : this.cloudInitConfigurationBlobs;
    }
    /**
     * @return The delegation for the Virtual Appliance
     * 
     */
    public Optional delegation() {
        return Optional.ofNullable(this.delegation);
    }
    /**
     * @return The deployment type. PartnerManaged for the SaaS NVA
     * 
     */
    public String deploymentType() {
        return this.deploymentType;
    }
    /**
     * @return A unique read-only string that changes whenever the resource is updated.
     * 
     */
    public String etag() {
        return this.etag;
    }
    /**
     * @return Resource ID.
     * 
     */
    public Optional id() {
        return Optional.ofNullable(this.id);
    }
    /**
     * @return The service principal that has read access to cloud-init and config blob.
     * 
     */
    public Optional identity() {
        return Optional.ofNullable(this.identity);
    }
    /**
     * @return List of references to InboundSecurityRules.
     * 
     */
    public List inboundSecurityRules() {
        return this.inboundSecurityRules;
    }
    /**
     * @return Resource location.
     * 
     */
    public Optional location() {
        return Optional.ofNullable(this.location);
    }
    /**
     * @return Resource name.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return Network Virtual Appliance SKU.
     * 
     */
    public Optional nvaSku() {
        return Optional.ofNullable(this.nvaSku);
    }
    /**
     * @return The delegation for the Virtual Appliance
     * 
     */
    public Optional partnerManagedResource() {
        return Optional.ofNullable(this.partnerManagedResource);
    }
    /**
     * @return The provisioning state of the resource.
     * 
     */
    public String provisioningState() {
        return this.provisioningState;
    }
    /**
     * @return Public key for SSH login.
     * 
     */
    public Optional sshPublicKey() {
        return Optional.ofNullable(this.sshPublicKey);
    }
    /**
     * @return Resource tags.
     * 
     */
    public Map tags() {
        return this.tags == null ? Map.of() : this.tags;
    }
    /**
     * @return Resource type.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return VirtualAppliance ASN. Microsoft private, public and IANA reserved ASN are not supported.
     * 
     */
    public Optional virtualApplianceAsn() {
        return Optional.ofNullable(this.virtualApplianceAsn);
    }
    /**
     * @return List of Virtual Appliance Network Interfaces.
     * 
     */
    public List virtualApplianceNics() {
        return this.virtualApplianceNics;
    }
    /**
     * @return List of references to VirtualApplianceSite.
     * 
     */
    public List virtualApplianceSites() {
        return this.virtualApplianceSites;
    }
    /**
     * @return The Virtual Hub where Network Virtual Appliance is being deployed.
     * 
     */
    public Optional virtualHub() {
        return Optional.ofNullable(this.virtualHub);
    }

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

    public static Builder builder(GetNetworkVirtualApplianceResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List additionalNics;
        private String addressPrefix;
        private @Nullable List bootStrapConfigurationBlobs;
        private @Nullable String cloudInitConfiguration;
        private @Nullable List cloudInitConfigurationBlobs;
        private @Nullable DelegationPropertiesResponse delegation;
        private String deploymentType;
        private String etag;
        private @Nullable String id;
        private @Nullable ManagedServiceIdentityResponse identity;
        private List inboundSecurityRules;
        private @Nullable String location;
        private String name;
        private @Nullable VirtualApplianceSkuPropertiesResponse nvaSku;
        private @Nullable PartnerManagedResourcePropertiesResponse partnerManagedResource;
        private String provisioningState;
        private @Nullable String sshPublicKey;
        private @Nullable Map tags;
        private String type;
        private @Nullable Double virtualApplianceAsn;
        private List virtualApplianceNics;
        private List virtualApplianceSites;
        private @Nullable SubResourceResponse virtualHub;
        public Builder() {}
        public Builder(GetNetworkVirtualApplianceResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.additionalNics = defaults.additionalNics;
    	      this.addressPrefix = defaults.addressPrefix;
    	      this.bootStrapConfigurationBlobs = defaults.bootStrapConfigurationBlobs;
    	      this.cloudInitConfiguration = defaults.cloudInitConfiguration;
    	      this.cloudInitConfigurationBlobs = defaults.cloudInitConfigurationBlobs;
    	      this.delegation = defaults.delegation;
    	      this.deploymentType = defaults.deploymentType;
    	      this.etag = defaults.etag;
    	      this.id = defaults.id;
    	      this.identity = defaults.identity;
    	      this.inboundSecurityRules = defaults.inboundSecurityRules;
    	      this.location = defaults.location;
    	      this.name = defaults.name;
    	      this.nvaSku = defaults.nvaSku;
    	      this.partnerManagedResource = defaults.partnerManagedResource;
    	      this.provisioningState = defaults.provisioningState;
    	      this.sshPublicKey = defaults.sshPublicKey;
    	      this.tags = defaults.tags;
    	      this.type = defaults.type;
    	      this.virtualApplianceAsn = defaults.virtualApplianceAsn;
    	      this.virtualApplianceNics = defaults.virtualApplianceNics;
    	      this.virtualApplianceSites = defaults.virtualApplianceSites;
    	      this.virtualHub = defaults.virtualHub;
        }

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

            this.additionalNics = additionalNics;
            return this;
        }
        public Builder additionalNics(VirtualApplianceAdditionalNicPropertiesResponse... additionalNics) {
            return additionalNics(List.of(additionalNics));
        }
        @CustomType.Setter
        public Builder addressPrefix(String addressPrefix) {
            if (addressPrefix == null) {
              throw new MissingRequiredPropertyException("GetNetworkVirtualApplianceResult", "addressPrefix");
            }
            this.addressPrefix = addressPrefix;
            return this;
        }
        @CustomType.Setter
        public Builder bootStrapConfigurationBlobs(@Nullable List bootStrapConfigurationBlobs) {

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

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

            this.cloudInitConfigurationBlobs = cloudInitConfigurationBlobs;
            return this;
        }
        public Builder cloudInitConfigurationBlobs(String... cloudInitConfigurationBlobs) {
            return cloudInitConfigurationBlobs(List.of(cloudInitConfigurationBlobs));
        }
        @CustomType.Setter
        public Builder delegation(@Nullable DelegationPropertiesResponse delegation) {

            this.delegation = delegation;
            return this;
        }
        @CustomType.Setter
        public Builder deploymentType(String deploymentType) {
            if (deploymentType == null) {
              throw new MissingRequiredPropertyException("GetNetworkVirtualApplianceResult", "deploymentType");
            }
            this.deploymentType = deploymentType;
            return this;
        }
        @CustomType.Setter
        public Builder etag(String etag) {
            if (etag == null) {
              throw new MissingRequiredPropertyException("GetNetworkVirtualApplianceResult", "etag");
            }
            this.etag = etag;
            return this;
        }
        @CustomType.Setter
        public Builder id(@Nullable String id) {

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

            this.identity = identity;
            return this;
        }
        @CustomType.Setter
        public Builder inboundSecurityRules(List inboundSecurityRules) {
            if (inboundSecurityRules == null) {
              throw new MissingRequiredPropertyException("GetNetworkVirtualApplianceResult", "inboundSecurityRules");
            }
            this.inboundSecurityRules = inboundSecurityRules;
            return this;
        }
        public Builder inboundSecurityRules(SubResourceResponse... inboundSecurityRules) {
            return inboundSecurityRules(List.of(inboundSecurityRules));
        }
        @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("GetNetworkVirtualApplianceResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder nvaSku(@Nullable VirtualApplianceSkuPropertiesResponse nvaSku) {

            this.nvaSku = nvaSku;
            return this;
        }
        @CustomType.Setter
        public Builder partnerManagedResource(@Nullable PartnerManagedResourcePropertiesResponse partnerManagedResource) {

            this.partnerManagedResource = partnerManagedResource;
            return this;
        }
        @CustomType.Setter
        public Builder provisioningState(String provisioningState) {
            if (provisioningState == null) {
              throw new MissingRequiredPropertyException("GetNetworkVirtualApplianceResult", "provisioningState");
            }
            this.provisioningState = provisioningState;
            return this;
        }
        @CustomType.Setter
        public Builder sshPublicKey(@Nullable String sshPublicKey) {

            this.sshPublicKey = sshPublicKey;
            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("GetNetworkVirtualApplianceResult", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder virtualApplianceAsn(@Nullable Double virtualApplianceAsn) {

            this.virtualApplianceAsn = virtualApplianceAsn;
            return this;
        }
        @CustomType.Setter
        public Builder virtualApplianceNics(List virtualApplianceNics) {
            if (virtualApplianceNics == null) {
              throw new MissingRequiredPropertyException("GetNetworkVirtualApplianceResult", "virtualApplianceNics");
            }
            this.virtualApplianceNics = virtualApplianceNics;
            return this;
        }
        public Builder virtualApplianceNics(VirtualApplianceNicPropertiesResponse... virtualApplianceNics) {
            return virtualApplianceNics(List.of(virtualApplianceNics));
        }
        @CustomType.Setter
        public Builder virtualApplianceSites(List virtualApplianceSites) {
            if (virtualApplianceSites == null) {
              throw new MissingRequiredPropertyException("GetNetworkVirtualApplianceResult", "virtualApplianceSites");
            }
            this.virtualApplianceSites = virtualApplianceSites;
            return this;
        }
        public Builder virtualApplianceSites(SubResourceResponse... virtualApplianceSites) {
            return virtualApplianceSites(List.of(virtualApplianceSites));
        }
        @CustomType.Setter
        public Builder virtualHub(@Nullable SubResourceResponse virtualHub) {

            this.virtualHub = virtualHub;
            return this;
        }
        public GetNetworkVirtualApplianceResult build() {
            final var _resultValue = new GetNetworkVirtualApplianceResult();
            _resultValue.additionalNics = additionalNics;
            _resultValue.addressPrefix = addressPrefix;
            _resultValue.bootStrapConfigurationBlobs = bootStrapConfigurationBlobs;
            _resultValue.cloudInitConfiguration = cloudInitConfiguration;
            _resultValue.cloudInitConfigurationBlobs = cloudInitConfigurationBlobs;
            _resultValue.delegation = delegation;
            _resultValue.deploymentType = deploymentType;
            _resultValue.etag = etag;
            _resultValue.id = id;
            _resultValue.identity = identity;
            _resultValue.inboundSecurityRules = inboundSecurityRules;
            _resultValue.location = location;
            _resultValue.name = name;
            _resultValue.nvaSku = nvaSku;
            _resultValue.partnerManagedResource = partnerManagedResource;
            _resultValue.provisioningState = provisioningState;
            _resultValue.sshPublicKey = sshPublicKey;
            _resultValue.tags = tags;
            _resultValue.type = type;
            _resultValue.virtualApplianceAsn = virtualApplianceAsn;
            _resultValue.virtualApplianceNics = virtualApplianceNics;
            _resultValue.virtualApplianceSites = virtualApplianceSites;
            _resultValue.virtualHub = virtualHub;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy