GoogleComputeRouterNat constructor
GoogleComputeRouterNat({
- required String localName,
- required TfArg<
String> name, - required TfArg<
String> router, - TfArg<
String> ? region, - required TfArg<
ComputeRouterNatSourceSubnetworkIpRangesToNat> sourceSubnetworkIpRangesToNat, - TfArg<
ComputeRouterNatNatIpAllocateOption> ? natIpAllocateOption, - TfArg<
ComputeRouterNatType> ? type, - TfArg<
List< ? natIps,String> > - TfArg<
List< ? initialNatIps,String> > - TfArg<
List< ? drainNatIps,String> > - TfArg<
num> ? minPortsPerVm, - TfArg<
num> ? maxPortsPerVm, - TfArg<
bool> ? enableDynamicPortAllocation, - TfArg<
bool> ? enableEndpointIndependentMapping, - TfArg<
num> ? icmpIdleTimeoutSec, - TfArg<
num> ? tcpEstablishedIdleTimeoutSec, - TfArg<
num> ? tcpTransitoryIdleTimeoutSec, - TfArg<
num> ? tcpTimeWaitTimeoutSec, - TfArg<
num> ? udpIdleTimeoutSec, - TfArg<
ComputeRouterNatAutoNetworkTier> ? autoNetworkTier, - TfArg<
List< ? endpointTypes,String> > - TfArg<
ComputeRouterNatSourceSubnetworkIpRangesToNat64> ? sourceSubnetworkIpRangesToNat64, - TfArg<
String> ? deletionPolicy, - TfArg<
String> ? project, - LifecycleOptions? lifecycle,
- List<
DependencyTarget> ? dependsOn,
Implementation
GoogleComputeRouterNat({
required super.localName,
required TfArg<String> name,
required TfArg<String> router,
TfArg<String>? region,
required TfArg<ComputeRouterNatSourceSubnetworkIpRangesToNat>
sourceSubnetworkIpRangesToNat,
TfArg<ComputeRouterNatNatIpAllocateOption>? natIpAllocateOption,
TfArg<ComputeRouterNatType>? type,
TfArg<List<String>>? natIps,
TfArg<List<String>>? initialNatIps,
TfArg<List<String>>? drainNatIps,
TfArg<num>? minPortsPerVm,
TfArg<num>? maxPortsPerVm,
TfArg<bool>? enableDynamicPortAllocation,
TfArg<bool>? enableEndpointIndependentMapping,
TfArg<num>? icmpIdleTimeoutSec,
TfArg<num>? tcpEstablishedIdleTimeoutSec,
TfArg<num>? tcpTransitoryIdleTimeoutSec,
TfArg<num>? tcpTimeWaitTimeoutSec,
TfArg<num>? udpIdleTimeoutSec,
TfArg<ComputeRouterNatAutoNetworkTier>? autoNetworkTier,
TfArg<List<String>>? endpointTypes,
TfArg<ComputeRouterNatSourceSubnetworkIpRangesToNat64>?
sourceSubnetworkIpRangesToNat64,
TfArg<String>? deletionPolicy,
TfArg<String>? project,
super.lifecycle,
super.dependsOn,
}) : super(
terraformType: tfType,
argMap: {
'name': name,
'router': router,
if (region != null) 'region': region,
'source_subnetwork_ip_ranges_to_nat': sourceSubnetworkIpRangesToNat,
if (natIpAllocateOption != null)
'nat_ip_allocate_option': natIpAllocateOption,
if (type != null) 'type': type,
if (natIps != null) 'nat_ips': natIps,
if (initialNatIps != null) 'initial_nat_ips': initialNatIps,
if (drainNatIps != null) 'drain_nat_ips': drainNatIps,
if (minPortsPerVm != null) 'min_ports_per_vm': minPortsPerVm,
if (maxPortsPerVm != null) 'max_ports_per_vm': maxPortsPerVm,
if (enableDynamicPortAllocation != null)
'enable_dynamic_port_allocation': enableDynamicPortAllocation,
if (enableEndpointIndependentMapping != null)
'enable_endpoint_independent_mapping':
enableEndpointIndependentMapping,
if (icmpIdleTimeoutSec != null)
'icmp_idle_timeout_sec': icmpIdleTimeoutSec,
if (tcpEstablishedIdleTimeoutSec != null)
'tcp_established_idle_timeout_sec': tcpEstablishedIdleTimeoutSec,
if (tcpTransitoryIdleTimeoutSec != null)
'tcp_transitory_idle_timeout_sec': tcpTransitoryIdleTimeoutSec,
if (tcpTimeWaitTimeoutSec != null)
'tcp_time_wait_timeout_sec': tcpTimeWaitTimeoutSec,
if (udpIdleTimeoutSec != null)
'udp_idle_timeout_sec': udpIdleTimeoutSec,
if (autoNetworkTier != null) 'auto_network_tier': autoNetworkTier,
if (endpointTypes != null) 'endpoint_types': endpointTypes,
if (sourceSubnetworkIpRangesToNat64 != null)
'source_subnetwork_ip_ranges_to_nat64':
sourceSubnetworkIpRangesToNat64,
if (deletionPolicy != null) 'deletion_policy': deletionPolicy,
if (project != null) 'project': project,
},
);