compute  v1
Public Member Functions | Static Public Member Functions | List of all members
google_compute_api::RouterNat Class Reference

#include <router_nat.h>

Inheritance diagram for google_compute_api::RouterNat:

Public Member Functions

 RouterNat (const Json::Value &storage)
 
 RouterNat (Json::Value *storage)
 
virtual ~RouterNat ()
 
const StringPiece GetTypeName () const
 
bool has_icmp_idle_timeout_sec () const
 
void clear_icmp_idle_timeout_sec ()
 
int32 get_icmp_idle_timeout_sec () const
 
void set_icmp_idle_timeout_sec (int32 value)
 
bool has_min_ports_per_vm () const
 
void clear_min_ports_per_vm ()
 
int32 get_min_ports_per_vm () const
 
void set_min_ports_per_vm (int32 value)
 
bool has_name () const
 
void clear_name ()
 
const StringPiece get_name () const
 
void set_name (const StringPiece &value)
 
bool has_nat_ip_allocate_option () const
 
void clear_nat_ip_allocate_option ()
 
const StringPiece get_nat_ip_allocate_option () const
 
void set_nat_ip_allocate_option (const StringPiece &value)
 
bool has_nat_ips () const
 
void clear_nat_ips ()
 
const client::JsonCppArray< string > get_nat_ips () const
 
client::JsonCppArray< string > mutable_natIps ()
 
bool has_source_subnetwork_ip_ranges_to_nat () const
 
void clear_source_subnetwork_ip_ranges_to_nat ()
 
const StringPiece get_source_subnetwork_ip_ranges_to_nat () const
 
void set_source_subnetwork_ip_ranges_to_nat (const StringPiece &value)
 
bool has_subnetworks () const
 
void clear_subnetworks ()
 
const client::JsonCppArray< RouterNatSubnetworkToNatget_subnetworks () const
 
client::JsonCppArray< RouterNatSubnetworkToNatmutable_subnetworks ()
 
bool has_tcp_established_idle_timeout_sec () const
 
void clear_tcp_established_idle_timeout_sec ()
 
int32 get_tcp_established_idle_timeout_sec () const
 
void set_tcp_established_idle_timeout_sec (int32 value)
 
bool has_tcp_transitory_idle_timeout_sec () const
 
void clear_tcp_transitory_idle_timeout_sec ()
 
int32 get_tcp_transitory_idle_timeout_sec () const
 
void set_tcp_transitory_idle_timeout_sec (int32 value)
 
bool has_udp_idle_timeout_sec () const
 
void clear_udp_idle_timeout_sec ()
 
int32 get_udp_idle_timeout_sec () const
 
void set_udp_idle_timeout_sec (int32 value)
 

Static Public Member Functions

static RouterNatNew ()
 

Detailed Description

Represents a Nat resource. It enables the VMs within the specified subnetworks to access Internet without external IP addresses. It specifies a list of subnetworks (and the ranges within) that want to use NAT. Customers can also provide the external IPs that would be used for NAT. GCP would auto- allocate ephemeral IPs if no external IPs are provided.

Constructor & Destructor Documentation

◆ RouterNat() [1/2]

google_compute_api::RouterNat::RouterNat ( const Json::Value &  storage)
explicit

Standard constructor for an immutable data object instance.

Parameters
[in]storageThe underlying data storage for this instance.

◆ RouterNat() [2/2]

google_compute_api::RouterNat::RouterNat ( Json::Value *  storage)
explicit

Standard constructor for a mutable data object instance.

Parameters
[in]storageThe underlying data storage for this instance.

◆ ~RouterNat()

google_compute_api::RouterNat::~RouterNat ( )
virtual

Standard destructor.

Member Function Documentation

◆ clear_icmp_idle_timeout_sec()

void google_compute_api::RouterNat::clear_icmp_idle_timeout_sec ( )
inline

Clears the 'icmpIdleTimeoutSec' attribute.

◆ clear_min_ports_per_vm()

void google_compute_api::RouterNat::clear_min_ports_per_vm ( )
inline

Clears the 'minPortsPerVm' attribute.

◆ clear_name()

void google_compute_api::RouterNat::clear_name ( )
inline

Clears the 'name' attribute.

◆ clear_nat_ip_allocate_option()

void google_compute_api::RouterNat::clear_nat_ip_allocate_option ( )
inline

Clears the 'natIpAllocateOption' attribute.

◆ clear_nat_ips()

void google_compute_api::RouterNat::clear_nat_ips ( )
inline

Clears the 'natIps' attribute.

◆ clear_source_subnetwork_ip_ranges_to_nat()

void google_compute_api::RouterNat::clear_source_subnetwork_ip_ranges_to_nat ( )
inline

Clears the 'sourceSubnetworkIpRangesToNat' attribute.

◆ clear_subnetworks()

void google_compute_api::RouterNat::clear_subnetworks ( )
inline

Clears the 'subnetworks' attribute.

◆ clear_tcp_established_idle_timeout_sec()

void google_compute_api::RouterNat::clear_tcp_established_idle_timeout_sec ( )
inline

Clears the 'tcpEstablishedIdleTimeoutSec' attribute.

◆ clear_tcp_transitory_idle_timeout_sec()

void google_compute_api::RouterNat::clear_tcp_transitory_idle_timeout_sec ( )
inline

Clears the 'tcpTransitoryIdleTimeoutSec' attribute.

◆ clear_udp_idle_timeout_sec()

void google_compute_api::RouterNat::clear_udp_idle_timeout_sec ( )
inline

Clears the 'udpIdleTimeoutSec' attribute.

◆ get_icmp_idle_timeout_sec()

int32 google_compute_api::RouterNat::get_icmp_idle_timeout_sec ( ) const
inline

Get the value of the 'icmpIdleTimeoutSec' attribute.

◆ get_min_ports_per_vm()

int32 google_compute_api::RouterNat::get_min_ports_per_vm ( ) const
inline

Get the value of the 'minPortsPerVm' attribute.

◆ get_name()

const StringPiece google_compute_api::RouterNat::get_name ( ) const
inline

Get the value of the 'name' attribute.

◆ get_nat_ip_allocate_option()

const StringPiece google_compute_api::RouterNat::get_nat_ip_allocate_option ( ) const
inline

Get the value of the 'natIpAllocateOption' attribute.

◆ get_nat_ips()

const client::JsonCppArray<string > google_compute_api::RouterNat::get_nat_ips ( ) const
inline

Get a reference to the value of the 'natIps' attribute.

◆ get_source_subnetwork_ip_ranges_to_nat()

const StringPiece google_compute_api::RouterNat::get_source_subnetwork_ip_ranges_to_nat ( ) const
inline

Get the value of the 'sourceSubnetworkIpRangesToNat' attribute.

◆ get_subnetworks()

const client::JsonCppArray<RouterNatSubnetworkToNat > google_compute_api::RouterNat::get_subnetworks ( ) const

Get a reference to the value of the 'subnetworks' attribute.

◆ get_tcp_established_idle_timeout_sec()

int32 google_compute_api::RouterNat::get_tcp_established_idle_timeout_sec ( ) const
inline

Get the value of the 'tcpEstablishedIdleTimeoutSec' attribute.

◆ get_tcp_transitory_idle_timeout_sec()

int32 google_compute_api::RouterNat::get_tcp_transitory_idle_timeout_sec ( ) const
inline

Get the value of the 'tcpTransitoryIdleTimeoutSec' attribute.

◆ get_udp_idle_timeout_sec()

int32 google_compute_api::RouterNat::get_udp_idle_timeout_sec ( ) const
inline

Get the value of the 'udpIdleTimeoutSec' attribute.

◆ GetTypeName()

const StringPiece google_compute_api::RouterNat::GetTypeName ( ) const
inline

Returns a string denoting the type of this data object.

Returns
google_compute_api::RouterNat

◆ has_icmp_idle_timeout_sec()

bool google_compute_api::RouterNat::has_icmp_idle_timeout_sec ( ) const
inline

Determine if the 'icmpIdleTimeoutSec' attribute was set.

Returns
true if the 'icmpIdleTimeoutSec' attribute was set.

◆ has_min_ports_per_vm()

bool google_compute_api::RouterNat::has_min_ports_per_vm ( ) const
inline

Determine if the 'minPortsPerVm' attribute was set.

Returns
true if the 'minPortsPerVm' attribute was set.

◆ has_name()

bool google_compute_api::RouterNat::has_name ( ) const
inline

Determine if the 'name' attribute was set.

Returns
true if the 'name' attribute was set.

◆ has_nat_ip_allocate_option()

bool google_compute_api::RouterNat::has_nat_ip_allocate_option ( ) const
inline

Determine if the 'natIpAllocateOption' attribute was set.

Returns
true if the 'natIpAllocateOption' attribute was set.

◆ has_nat_ips()

bool google_compute_api::RouterNat::has_nat_ips ( ) const
inline

Determine if the 'natIps' attribute was set.

Returns
true if the 'natIps' attribute was set.

◆ has_source_subnetwork_ip_ranges_to_nat()

bool google_compute_api::RouterNat::has_source_subnetwork_ip_ranges_to_nat ( ) const
inline

Determine if the 'sourceSubnetworkIpRangesToNat' attribute was set.

Returns
true if the 'sourceSubnetworkIpRangesToNat' attribute was set.

◆ has_subnetworks()

bool google_compute_api::RouterNat::has_subnetworks ( ) const
inline

Determine if the 'subnetworks' attribute was set.

Returns
true if the 'subnetworks' attribute was set.

◆ has_tcp_established_idle_timeout_sec()

bool google_compute_api::RouterNat::has_tcp_established_idle_timeout_sec ( ) const
inline

Determine if the 'tcpEstablishedIdleTimeoutSec' attribute was set.

Returns
true if the 'tcpEstablishedIdleTimeoutSec' attribute was set.

◆ has_tcp_transitory_idle_timeout_sec()

bool google_compute_api::RouterNat::has_tcp_transitory_idle_timeout_sec ( ) const
inline

Determine if the 'tcpTransitoryIdleTimeoutSec' attribute was set.

Returns
true if the 'tcpTransitoryIdleTimeoutSec' attribute was set.

◆ has_udp_idle_timeout_sec()

bool google_compute_api::RouterNat::has_udp_idle_timeout_sec ( ) const
inline

Determine if the 'udpIdleTimeoutSec' attribute was set.

Returns
true if the 'udpIdleTimeoutSec' attribute was set.

◆ mutable_natIps()

client::JsonCppArray<string > google_compute_api::RouterNat::mutable_natIps ( )
inline

Gets a reference to a mutable value of the 'natIps' property.

A list of URLs of the IP resources used for this Nat service. These IPs must be valid static external IP addresses assigned to the project. max_length is subject to change post alpha.

Returns
The result can be modified to change the attribute value.

◆ mutable_subnetworks()

client::JsonCppArray<RouterNatSubnetworkToNat > google_compute_api::RouterNat::mutable_subnetworks ( )

Gets a reference to a mutable value of the 'subnetworks' property.

A list of Subnetwork resources whose traffic should be translated by NAT Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the SubnetworkIpRangeToNatOption above.

Returns
The result can be modified to change the attribute value.

◆ New()

RouterNat * google_compute_api::RouterNat::New ( )
static

Creates a new default instance.

Returns
Ownership is passed back to the caller.

◆ set_icmp_idle_timeout_sec()

void google_compute_api::RouterNat::set_icmp_idle_timeout_sec ( int32  value)
inline

Change the 'icmpIdleTimeoutSec' attribute.

Timeout (in seconds) for ICMP connections. Defaults to 30s if not set.

Parameters
[in]valueThe new value.

◆ set_min_ports_per_vm()

void google_compute_api::RouterNat::set_min_ports_per_vm ( int32  value)
inline

Change the 'minPortsPerVm' attribute.

Minimum number of ports allocated to a VM from this NAT config. If not set, a default number of ports is allocated to a VM. This gets rounded up to the nearest power of 2. Eg. if the value of this field is 50, at least 64 ports will be allocated to a VM.

Parameters
[in]valueThe new value.

◆ set_name()

void google_compute_api::RouterNat::set_name ( const StringPiece &  value)
inline

Change the 'name' attribute.

Unique name of this Nat service. The name must be 1-63 characters long and comply with RFC1035.

Parameters
[in]valueThe new value.

◆ set_nat_ip_allocate_option()

void google_compute_api::RouterNat::set_nat_ip_allocate_option ( const StringPiece &  value)
inline

Change the 'natIpAllocateOption' attribute.

Specify the NatIpAllocateOption. If it is AUTO_ONLY, then nat_ip should be empty.

Parameters
[in]valueThe new value.

◆ set_source_subnetwork_ip_ranges_to_nat()

void google_compute_api::RouterNat::set_source_subnetwork_ip_ranges_to_nat ( const StringPiece &  value)
inline

Change the 'sourceSubnetworkIpRangesToNat' attribute.

Specify the Nat option. If this field contains ALL_SUBNETWORKS_ALL_IP_RANGES or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other Router.Nat section in any Router for this network in this region.

Parameters
[in]valueThe new value.

◆ set_tcp_established_idle_timeout_sec()

void google_compute_api::RouterNat::set_tcp_established_idle_timeout_sec ( int32  value)
inline

Change the 'tcpEstablishedIdleTimeoutSec' attribute.

Timeout (in seconds) for TCP established connections. Defaults to 1200s if not set.

Parameters
[in]valueThe new value.

◆ set_tcp_transitory_idle_timeout_sec()

void google_compute_api::RouterNat::set_tcp_transitory_idle_timeout_sec ( int32  value)
inline

Change the 'tcpTransitoryIdleTimeoutSec' attribute.

Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not set.

Parameters
[in]valueThe new value.

◆ set_udp_idle_timeout_sec()

void google_compute_api::RouterNat::set_udp_idle_timeout_sec ( int32  value)
inline

Change the 'udpIdleTimeoutSec' attribute.

Timeout (in seconds) for UDP connections. Defaults to 30s if not set.

Parameters
[in]valueThe new value.

The documentation for this class was generated from the following files: