
com.pulumi.azurenative.network.outputs.VirtualNetworkGatewayResponse Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-native Show documentation
Show all versions of azure-native Show documentation
A native Pulumi package for creating and managing Azure resources.
// *** 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.AddressSpaceResponse;
import com.pulumi.azurenative.network.outputs.BgpSettingsResponse;
import com.pulumi.azurenative.network.outputs.ExtendedLocationResponse;
import com.pulumi.azurenative.network.outputs.SubResourceResponse;
import com.pulumi.azurenative.network.outputs.VirtualNetworkGatewayIPConfigurationResponse;
import com.pulumi.azurenative.network.outputs.VirtualNetworkGatewayNatRuleResponse;
import com.pulumi.azurenative.network.outputs.VirtualNetworkGatewayPolicyGroupResponse;
import com.pulumi.azurenative.network.outputs.VirtualNetworkGatewaySkuResponse;
import com.pulumi.azurenative.network.outputs.VpnClientConfigurationResponse;
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 VirtualNetworkGatewayResponse {
/**
* @return ActiveActive flag.
*
*/
private @Nullable Boolean activeActive;
/**
* @return Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet
*
*/
private @Nullable String adminState;
/**
* @return Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN.
*
*/
private @Nullable Boolean allowRemoteVnetTraffic;
/**
* @return Configures this gateway to accept traffic from remote Virtual WAN networks.
*
*/
private @Nullable Boolean allowVirtualWanTraffic;
/**
* @return Virtual network gateway's BGP speaker settings.
*
*/
private @Nullable BgpSettingsResponse bgpSettings;
/**
* @return The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient.
*
*/
private @Nullable AddressSpaceResponse customRoutes;
/**
* @return disableIPSecReplayProtection flag.
*
*/
private @Nullable Boolean disableIPSecReplayProtection;
/**
* @return Whether BGP is enabled for this virtual network gateway or not.
*
*/
private @Nullable Boolean enableBgp;
/**
* @return EnableBgpRouteTranslationForNat flag.
*
*/
private @Nullable Boolean enableBgpRouteTranslationForNat;
/**
* @return Whether dns forwarding is enabled or not.
*
*/
private @Nullable Boolean enableDnsForwarding;
/**
* @return Whether private IP needs to be enabled on this gateway for connections or not.
*
*/
private @Nullable Boolean enablePrivateIpAddress;
/**
* @return A unique read-only string that changes whenever the resource is updated.
*
*/
private String etag;
/**
* @return The extended location of type local virtual network gateway.
*
*/
private @Nullable ExtendedLocationResponse extendedLocation;
/**
* @return The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting.
*
*/
private @Nullable SubResourceResponse gatewayDefaultSite;
/**
* @return The type of this virtual network gateway.
*
*/
private @Nullable String gatewayType;
/**
* @return Resource ID.
*
*/
private @Nullable String id;
/**
* @return The IP address allocated by the gateway to which dns requests can be sent.
*
*/
private String inboundDnsForwardingEndpoint;
/**
* @return IP configurations for virtual network gateway.
*
*/
private @Nullable List ipConfigurations;
/**
* @return Resource location.
*
*/
private @Nullable String location;
/**
* @return Resource name.
*
*/
private String name;
/**
* @return NatRules for virtual network gateway.
*
*/
private @Nullable List natRules;
/**
* @return The provisioning state of the virtual network gateway resource.
*
*/
private String provisioningState;
/**
* @return The resource GUID property of the virtual network gateway resource.
*
*/
private String resourceGuid;
/**
* @return The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway.
*
*/
private @Nullable VirtualNetworkGatewaySkuResponse sku;
/**
* @return Resource tags.
*
*/
private @Nullable Map tags;
/**
* @return Resource type.
*
*/
private String type;
/**
* @return Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet.
*
*/
private @Nullable String vNetExtendedLocationResourceId;
/**
* @return The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway.
*
*/
private @Nullable List virtualNetworkGatewayPolicyGroups;
/**
* @return The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations.
*
*/
private @Nullable VpnClientConfigurationResponse vpnClientConfiguration;
/**
* @return The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.
*
*/
private @Nullable String vpnGatewayGeneration;
/**
* @return The type of this virtual network gateway.
*
*/
private @Nullable String vpnType;
private VirtualNetworkGatewayResponse() {}
/**
* @return ActiveActive flag.
*
*/
public Optional activeActive() {
return Optional.ofNullable(this.activeActive);
}
/**
* @return Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet
*
*/
public Optional adminState() {
return Optional.ofNullable(this.adminState);
}
/**
* @return Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN.
*
*/
public Optional allowRemoteVnetTraffic() {
return Optional.ofNullable(this.allowRemoteVnetTraffic);
}
/**
* @return Configures this gateway to accept traffic from remote Virtual WAN networks.
*
*/
public Optional allowVirtualWanTraffic() {
return Optional.ofNullable(this.allowVirtualWanTraffic);
}
/**
* @return Virtual network gateway's BGP speaker settings.
*
*/
public Optional bgpSettings() {
return Optional.ofNullable(this.bgpSettings);
}
/**
* @return The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient.
*
*/
public Optional customRoutes() {
return Optional.ofNullable(this.customRoutes);
}
/**
* @return disableIPSecReplayProtection flag.
*
*/
public Optional disableIPSecReplayProtection() {
return Optional.ofNullable(this.disableIPSecReplayProtection);
}
/**
* @return Whether BGP is enabled for this virtual network gateway or not.
*
*/
public Optional enableBgp() {
return Optional.ofNullable(this.enableBgp);
}
/**
* @return EnableBgpRouteTranslationForNat flag.
*
*/
public Optional enableBgpRouteTranslationForNat() {
return Optional.ofNullable(this.enableBgpRouteTranslationForNat);
}
/**
* @return Whether dns forwarding is enabled or not.
*
*/
public Optional enableDnsForwarding() {
return Optional.ofNullable(this.enableDnsForwarding);
}
/**
* @return Whether private IP needs to be enabled on this gateway for connections or not.
*
*/
public Optional enablePrivateIpAddress() {
return Optional.ofNullable(this.enablePrivateIpAddress);
}
/**
* @return A unique read-only string that changes whenever the resource is updated.
*
*/
public String etag() {
return this.etag;
}
/**
* @return The extended location of type local virtual network gateway.
*
*/
public Optional extendedLocation() {
return Optional.ofNullable(this.extendedLocation);
}
/**
* @return The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting.
*
*/
public Optional gatewayDefaultSite() {
return Optional.ofNullable(this.gatewayDefaultSite);
}
/**
* @return The type of this virtual network gateway.
*
*/
public Optional gatewayType() {
return Optional.ofNullable(this.gatewayType);
}
/**
* @return Resource ID.
*
*/
public Optional id() {
return Optional.ofNullable(this.id);
}
/**
* @return The IP address allocated by the gateway to which dns requests can be sent.
*
*/
public String inboundDnsForwardingEndpoint() {
return this.inboundDnsForwardingEndpoint;
}
/**
* @return IP configurations for virtual network gateway.
*
*/
public List ipConfigurations() {
return this.ipConfigurations == null ? List.of() : this.ipConfigurations;
}
/**
* @return Resource location.
*
*/
public Optional location() {
return Optional.ofNullable(this.location);
}
/**
* @return Resource name.
*
*/
public String name() {
return this.name;
}
/**
* @return NatRules for virtual network gateway.
*
*/
public List natRules() {
return this.natRules == null ? List.of() : this.natRules;
}
/**
* @return The provisioning state of the virtual network gateway resource.
*
*/
public String provisioningState() {
return this.provisioningState;
}
/**
* @return The resource GUID property of the virtual network gateway resource.
*
*/
public String resourceGuid() {
return this.resourceGuid;
}
/**
* @return The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway.
*
*/
public Optional sku() {
return Optional.ofNullable(this.sku);
}
/**
* @return Resource tags.
*
*/
public Map tags() {
return this.tags == null ? Map.of() : this.tags;
}
/**
* @return Resource type.
*
*/
public String type() {
return this.type;
}
/**
* @return Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet.
*
*/
public Optional vNetExtendedLocationResourceId() {
return Optional.ofNullable(this.vNetExtendedLocationResourceId);
}
/**
* @return The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway.
*
*/
public List virtualNetworkGatewayPolicyGroups() {
return this.virtualNetworkGatewayPolicyGroups == null ? List.of() : this.virtualNetworkGatewayPolicyGroups;
}
/**
* @return The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations.
*
*/
public Optional vpnClientConfiguration() {
return Optional.ofNullable(this.vpnClientConfiguration);
}
/**
* @return The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.
*
*/
public Optional vpnGatewayGeneration() {
return Optional.ofNullable(this.vpnGatewayGeneration);
}
/**
* @return The type of this virtual network gateway.
*
*/
public Optional vpnType() {
return Optional.ofNullable(this.vpnType);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(VirtualNetworkGatewayResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable Boolean activeActive;
private @Nullable String adminState;
private @Nullable Boolean allowRemoteVnetTraffic;
private @Nullable Boolean allowVirtualWanTraffic;
private @Nullable BgpSettingsResponse bgpSettings;
private @Nullable AddressSpaceResponse customRoutes;
private @Nullable Boolean disableIPSecReplayProtection;
private @Nullable Boolean enableBgp;
private @Nullable Boolean enableBgpRouteTranslationForNat;
private @Nullable Boolean enableDnsForwarding;
private @Nullable Boolean enablePrivateIpAddress;
private String etag;
private @Nullable ExtendedLocationResponse extendedLocation;
private @Nullable SubResourceResponse gatewayDefaultSite;
private @Nullable String gatewayType;
private @Nullable String id;
private String inboundDnsForwardingEndpoint;
private @Nullable List ipConfigurations;
private @Nullable String location;
private String name;
private @Nullable List natRules;
private String provisioningState;
private String resourceGuid;
private @Nullable VirtualNetworkGatewaySkuResponse sku;
private @Nullable Map tags;
private String type;
private @Nullable String vNetExtendedLocationResourceId;
private @Nullable List virtualNetworkGatewayPolicyGroups;
private @Nullable VpnClientConfigurationResponse vpnClientConfiguration;
private @Nullable String vpnGatewayGeneration;
private @Nullable String vpnType;
public Builder() {}
public Builder(VirtualNetworkGatewayResponse defaults) {
Objects.requireNonNull(defaults);
this.activeActive = defaults.activeActive;
this.adminState = defaults.adminState;
this.allowRemoteVnetTraffic = defaults.allowRemoteVnetTraffic;
this.allowVirtualWanTraffic = defaults.allowVirtualWanTraffic;
this.bgpSettings = defaults.bgpSettings;
this.customRoutes = defaults.customRoutes;
this.disableIPSecReplayProtection = defaults.disableIPSecReplayProtection;
this.enableBgp = defaults.enableBgp;
this.enableBgpRouteTranslationForNat = defaults.enableBgpRouteTranslationForNat;
this.enableDnsForwarding = defaults.enableDnsForwarding;
this.enablePrivateIpAddress = defaults.enablePrivateIpAddress;
this.etag = defaults.etag;
this.extendedLocation = defaults.extendedLocation;
this.gatewayDefaultSite = defaults.gatewayDefaultSite;
this.gatewayType = defaults.gatewayType;
this.id = defaults.id;
this.inboundDnsForwardingEndpoint = defaults.inboundDnsForwardingEndpoint;
this.ipConfigurations = defaults.ipConfigurations;
this.location = defaults.location;
this.name = defaults.name;
this.natRules = defaults.natRules;
this.provisioningState = defaults.provisioningState;
this.resourceGuid = defaults.resourceGuid;
this.sku = defaults.sku;
this.tags = defaults.tags;
this.type = defaults.type;
this.vNetExtendedLocationResourceId = defaults.vNetExtendedLocationResourceId;
this.virtualNetworkGatewayPolicyGroups = defaults.virtualNetworkGatewayPolicyGroups;
this.vpnClientConfiguration = defaults.vpnClientConfiguration;
this.vpnGatewayGeneration = defaults.vpnGatewayGeneration;
this.vpnType = defaults.vpnType;
}
@CustomType.Setter
public Builder activeActive(@Nullable Boolean activeActive) {
this.activeActive = activeActive;
return this;
}
@CustomType.Setter
public Builder adminState(@Nullable String adminState) {
this.adminState = adminState;
return this;
}
@CustomType.Setter
public Builder allowRemoteVnetTraffic(@Nullable Boolean allowRemoteVnetTraffic) {
this.allowRemoteVnetTraffic = allowRemoteVnetTraffic;
return this;
}
@CustomType.Setter
public Builder allowVirtualWanTraffic(@Nullable Boolean allowVirtualWanTraffic) {
this.allowVirtualWanTraffic = allowVirtualWanTraffic;
return this;
}
@CustomType.Setter
public Builder bgpSettings(@Nullable BgpSettingsResponse bgpSettings) {
this.bgpSettings = bgpSettings;
return this;
}
@CustomType.Setter
public Builder customRoutes(@Nullable AddressSpaceResponse customRoutes) {
this.customRoutes = customRoutes;
return this;
}
@CustomType.Setter
public Builder disableIPSecReplayProtection(@Nullable Boolean disableIPSecReplayProtection) {
this.disableIPSecReplayProtection = disableIPSecReplayProtection;
return this;
}
@CustomType.Setter
public Builder enableBgp(@Nullable Boolean enableBgp) {
this.enableBgp = enableBgp;
return this;
}
@CustomType.Setter
public Builder enableBgpRouteTranslationForNat(@Nullable Boolean enableBgpRouteTranslationForNat) {
this.enableBgpRouteTranslationForNat = enableBgpRouteTranslationForNat;
return this;
}
@CustomType.Setter
public Builder enableDnsForwarding(@Nullable Boolean enableDnsForwarding) {
this.enableDnsForwarding = enableDnsForwarding;
return this;
}
@CustomType.Setter
public Builder enablePrivateIpAddress(@Nullable Boolean enablePrivateIpAddress) {
this.enablePrivateIpAddress = enablePrivateIpAddress;
return this;
}
@CustomType.Setter
public Builder etag(String etag) {
if (etag == null) {
throw new MissingRequiredPropertyException("VirtualNetworkGatewayResponse", "etag");
}
this.etag = etag;
return this;
}
@CustomType.Setter
public Builder extendedLocation(@Nullable ExtendedLocationResponse extendedLocation) {
this.extendedLocation = extendedLocation;
return this;
}
@CustomType.Setter
public Builder gatewayDefaultSite(@Nullable SubResourceResponse gatewayDefaultSite) {
this.gatewayDefaultSite = gatewayDefaultSite;
return this;
}
@CustomType.Setter
public Builder gatewayType(@Nullable String gatewayType) {
this.gatewayType = gatewayType;
return this;
}
@CustomType.Setter
public Builder id(@Nullable String id) {
this.id = id;
return this;
}
@CustomType.Setter
public Builder inboundDnsForwardingEndpoint(String inboundDnsForwardingEndpoint) {
if (inboundDnsForwardingEndpoint == null) {
throw new MissingRequiredPropertyException("VirtualNetworkGatewayResponse", "inboundDnsForwardingEndpoint");
}
this.inboundDnsForwardingEndpoint = inboundDnsForwardingEndpoint;
return this;
}
@CustomType.Setter
public Builder ipConfigurations(@Nullable List ipConfigurations) {
this.ipConfigurations = ipConfigurations;
return this;
}
public Builder ipConfigurations(VirtualNetworkGatewayIPConfigurationResponse... ipConfigurations) {
return ipConfigurations(List.of(ipConfigurations));
}
@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("VirtualNetworkGatewayResponse", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder natRules(@Nullable List natRules) {
this.natRules = natRules;
return this;
}
public Builder natRules(VirtualNetworkGatewayNatRuleResponse... natRules) {
return natRules(List.of(natRules));
}
@CustomType.Setter
public Builder provisioningState(String provisioningState) {
if (provisioningState == null) {
throw new MissingRequiredPropertyException("VirtualNetworkGatewayResponse", "provisioningState");
}
this.provisioningState = provisioningState;
return this;
}
@CustomType.Setter
public Builder resourceGuid(String resourceGuid) {
if (resourceGuid == null) {
throw new MissingRequiredPropertyException("VirtualNetworkGatewayResponse", "resourceGuid");
}
this.resourceGuid = resourceGuid;
return this;
}
@CustomType.Setter
public Builder sku(@Nullable VirtualNetworkGatewaySkuResponse sku) {
this.sku = sku;
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("VirtualNetworkGatewayResponse", "type");
}
this.type = type;
return this;
}
@CustomType.Setter
public Builder vNetExtendedLocationResourceId(@Nullable String vNetExtendedLocationResourceId) {
this.vNetExtendedLocationResourceId = vNetExtendedLocationResourceId;
return this;
}
@CustomType.Setter
public Builder virtualNetworkGatewayPolicyGroups(@Nullable List virtualNetworkGatewayPolicyGroups) {
this.virtualNetworkGatewayPolicyGroups = virtualNetworkGatewayPolicyGroups;
return this;
}
public Builder virtualNetworkGatewayPolicyGroups(VirtualNetworkGatewayPolicyGroupResponse... virtualNetworkGatewayPolicyGroups) {
return virtualNetworkGatewayPolicyGroups(List.of(virtualNetworkGatewayPolicyGroups));
}
@CustomType.Setter
public Builder vpnClientConfiguration(@Nullable VpnClientConfigurationResponse vpnClientConfiguration) {
this.vpnClientConfiguration = vpnClientConfiguration;
return this;
}
@CustomType.Setter
public Builder vpnGatewayGeneration(@Nullable String vpnGatewayGeneration) {
this.vpnGatewayGeneration = vpnGatewayGeneration;
return this;
}
@CustomType.Setter
public Builder vpnType(@Nullable String vpnType) {
this.vpnType = vpnType;
return this;
}
public VirtualNetworkGatewayResponse build() {
final var _resultValue = new VirtualNetworkGatewayResponse();
_resultValue.activeActive = activeActive;
_resultValue.adminState = adminState;
_resultValue.allowRemoteVnetTraffic = allowRemoteVnetTraffic;
_resultValue.allowVirtualWanTraffic = allowVirtualWanTraffic;
_resultValue.bgpSettings = bgpSettings;
_resultValue.customRoutes = customRoutes;
_resultValue.disableIPSecReplayProtection = disableIPSecReplayProtection;
_resultValue.enableBgp = enableBgp;
_resultValue.enableBgpRouteTranslationForNat = enableBgpRouteTranslationForNat;
_resultValue.enableDnsForwarding = enableDnsForwarding;
_resultValue.enablePrivateIpAddress = enablePrivateIpAddress;
_resultValue.etag = etag;
_resultValue.extendedLocation = extendedLocation;
_resultValue.gatewayDefaultSite = gatewayDefaultSite;
_resultValue.gatewayType = gatewayType;
_resultValue.id = id;
_resultValue.inboundDnsForwardingEndpoint = inboundDnsForwardingEndpoint;
_resultValue.ipConfigurations = ipConfigurations;
_resultValue.location = location;
_resultValue.name = name;
_resultValue.natRules = natRules;
_resultValue.provisioningState = provisioningState;
_resultValue.resourceGuid = resourceGuid;
_resultValue.sku = sku;
_resultValue.tags = tags;
_resultValue.type = type;
_resultValue.vNetExtendedLocationResourceId = vNetExtendedLocationResourceId;
_resultValue.virtualNetworkGatewayPolicyGroups = virtualNetworkGatewayPolicyGroups;
_resultValue.vpnClientConfiguration = vpnClientConfiguration;
_resultValue.vpnGatewayGeneration = vpnGatewayGeneration;
_resultValue.vpnType = vpnType;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy