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

com.pulumi.azurenative.migrate.outputs.VirtualNetworkResourceSettingsResponse 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.migrate.outputs;

import com.pulumi.azurenative.migrate.outputs.SubnetResourceSettingsResponse;
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 VirtualNetworkResourceSettingsResponse {
    /**
     * @return Gets or sets the address prefixes for the virtual network.
     * 
     */
    private @Nullable List addressSpace;
    /**
     * @return Gets or sets DHCPOptions that contains an array of DNS servers available to VMs
     * deployed in the virtual network.
     * 
     */
    private @Nullable List dnsServers;
    /**
     * @return Gets or sets a value indicating whether gets or sets whether the
     * DDOS protection should be switched on.
     * 
     */
    private @Nullable Boolean enableDdosProtection;
    /**
     * @return The resource type. For example, the value can be Microsoft.Compute/virtualMachines.
     * Expected value is 'Microsoft.Network/virtualNetworks'.
     * 
     */
    private String resourceType;
    /**
     * @return Gets or sets List of subnets in a VirtualNetwork.
     * 
     */
    private @Nullable List subnets;
    /**
     * @return Gets or sets the Resource tags.
     * 
     */
    private @Nullable Map tags;
    /**
     * @return Gets or sets the target resource group name.
     * 
     */
    private @Nullable String targetResourceGroupName;
    /**
     * @return Gets or sets the target Resource name.
     * 
     */
    private String targetResourceName;

    private VirtualNetworkResourceSettingsResponse() {}
    /**
     * @return Gets or sets the address prefixes for the virtual network.
     * 
     */
    public List addressSpace() {
        return this.addressSpace == null ? List.of() : this.addressSpace;
    }
    /**
     * @return Gets or sets DHCPOptions that contains an array of DNS servers available to VMs
     * deployed in the virtual network.
     * 
     */
    public List dnsServers() {
        return this.dnsServers == null ? List.of() : this.dnsServers;
    }
    /**
     * @return Gets or sets a value indicating whether gets or sets whether the
     * DDOS protection should be switched on.
     * 
     */
    public Optional enableDdosProtection() {
        return Optional.ofNullable(this.enableDdosProtection);
    }
    /**
     * @return The resource type. For example, the value can be Microsoft.Compute/virtualMachines.
     * Expected value is 'Microsoft.Network/virtualNetworks'.
     * 
     */
    public String resourceType() {
        return this.resourceType;
    }
    /**
     * @return Gets or sets List of subnets in a VirtualNetwork.
     * 
     */
    public List subnets() {
        return this.subnets == null ? List.of() : this.subnets;
    }
    /**
     * @return Gets or sets the Resource tags.
     * 
     */
    public Map tags() {
        return this.tags == null ? Map.of() : this.tags;
    }
    /**
     * @return Gets or sets the target resource group name.
     * 
     */
    public Optional targetResourceGroupName() {
        return Optional.ofNullable(this.targetResourceGroupName);
    }
    /**
     * @return Gets or sets the target Resource name.
     * 
     */
    public String targetResourceName() {
        return this.targetResourceName;
    }

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

    public static Builder builder(VirtualNetworkResourceSettingsResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List addressSpace;
        private @Nullable List dnsServers;
        private @Nullable Boolean enableDdosProtection;
        private String resourceType;
        private @Nullable List subnets;
        private @Nullable Map tags;
        private @Nullable String targetResourceGroupName;
        private String targetResourceName;
        public Builder() {}
        public Builder(VirtualNetworkResourceSettingsResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.addressSpace = defaults.addressSpace;
    	      this.dnsServers = defaults.dnsServers;
    	      this.enableDdosProtection = defaults.enableDdosProtection;
    	      this.resourceType = defaults.resourceType;
    	      this.subnets = defaults.subnets;
    	      this.tags = defaults.tags;
    	      this.targetResourceGroupName = defaults.targetResourceGroupName;
    	      this.targetResourceName = defaults.targetResourceName;
        }

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

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

            this.dnsServers = dnsServers;
            return this;
        }
        public Builder dnsServers(String... dnsServers) {
            return dnsServers(List.of(dnsServers));
        }
        @CustomType.Setter
        public Builder enableDdosProtection(@Nullable Boolean enableDdosProtection) {

            this.enableDdosProtection = enableDdosProtection;
            return this;
        }
        @CustomType.Setter
        public Builder resourceType(String resourceType) {
            if (resourceType == null) {
              throw new MissingRequiredPropertyException("VirtualNetworkResourceSettingsResponse", "resourceType");
            }
            this.resourceType = resourceType;
            return this;
        }
        @CustomType.Setter
        public Builder subnets(@Nullable List subnets) {

            this.subnets = subnets;
            return this;
        }
        public Builder subnets(SubnetResourceSettingsResponse... subnets) {
            return subnets(List.of(subnets));
        }
        @CustomType.Setter
        public Builder tags(@Nullable Map tags) {

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

            this.targetResourceGroupName = targetResourceGroupName;
            return this;
        }
        @CustomType.Setter
        public Builder targetResourceName(String targetResourceName) {
            if (targetResourceName == null) {
              throw new MissingRequiredPropertyException("VirtualNetworkResourceSettingsResponse", "targetResourceName");
            }
            this.targetResourceName = targetResourceName;
            return this;
        }
        public VirtualNetworkResourceSettingsResponse build() {
            final var _resultValue = new VirtualNetworkResourceSettingsResponse();
            _resultValue.addressSpace = addressSpace;
            _resultValue.dnsServers = dnsServers;
            _resultValue.enableDdosProtection = enableDdosProtection;
            _resultValue.resourceType = resourceType;
            _resultValue.subnets = subnets;
            _resultValue.tags = tags;
            _resultValue.targetResourceGroupName = targetResourceGroupName;
            _resultValue.targetResourceName = targetResourceName;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy