#[non_exhaustive]pub struct RouterStatusNatStatus {
pub auto_allocated_nat_ips: Vec<String>,
pub drain_auto_allocated_nat_ips: Vec<String>,
pub drain_user_allocated_nat_ips: Vec<String>,
pub min_extra_nat_ips_needed: Option<i32>,
pub name: Option<String>,
pub num_vm_endpoints_with_nat_mappings: Option<i32>,
pub rule_status: Vec<RouterStatusNatStatusNatRuleStatus>,
pub user_allocated_nat_ip_resources: Vec<String>,
pub user_allocated_nat_ips: Vec<String>,
/* private fields */
}routers only.Expand description
Status of a NAT contained in this router.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.auto_allocated_nat_ips: Vec<String>Output only. A list of IPs auto-allocated for NAT. Example: [“1.1.1.1”, “129.2.16.89”]
drain_auto_allocated_nat_ips: Vec<String>Output only. A list of IPs auto-allocated for NAT that are in drain mode. Example: [“1.1.1.1”, “179.12.26.133”].
drain_user_allocated_nat_ips: Vec<String>Output only. A list of IPs user-allocated for NAT that are in drain mode. Example: [“1.1.1.1”, “179.12.26.133”].
min_extra_nat_ips_needed: Option<i32>Output only. The number of extra IPs to allocate. This will be greater than 0 only if user-specified IPs are NOT enough to allow all configured VMs to use NAT. This value is meaningful only when auto-allocation of NAT IPs is not used.
name: Option<String>Output only. Unique name of this NAT.
num_vm_endpoints_with_nat_mappings: Option<i32>Output only. Number of VM endpoints (i.e., Nics) that can use NAT.
rule_status: Vec<RouterStatusNatStatusNatRuleStatus>Status of rules in this NAT.
user_allocated_nat_ip_resources: Vec<String>Output only. A list of fully qualified URLs of reserved IP address resources.
user_allocated_nat_ips: Vec<String>Output only. A list of IPs user-allocated for NAT. They will be raw IP strings like “179.12.26.133”.
Implementations§
Source§impl RouterStatusNatStatus
impl RouterStatusNatStatus
pub fn new() -> Self
Sourcepub fn set_auto_allocated_nat_ips<T, V>(self, v: T) -> Self
pub fn set_auto_allocated_nat_ips<T, V>(self, v: T) -> Self
Sets the value of auto_allocated_nat_ips.
§Example
let x = RouterStatusNatStatus::new().set_auto_allocated_nat_ips(["a", "b", "c"]);Sourcepub fn set_drain_auto_allocated_nat_ips<T, V>(self, v: T) -> Self
pub fn set_drain_auto_allocated_nat_ips<T, V>(self, v: T) -> Self
Sets the value of drain_auto_allocated_nat_ips.
§Example
let x = RouterStatusNatStatus::new().set_drain_auto_allocated_nat_ips(["a", "b", "c"]);Sourcepub fn set_drain_user_allocated_nat_ips<T, V>(self, v: T) -> Self
pub fn set_drain_user_allocated_nat_ips<T, V>(self, v: T) -> Self
Sets the value of drain_user_allocated_nat_ips.
§Example
let x = RouterStatusNatStatus::new().set_drain_user_allocated_nat_ips(["a", "b", "c"]);Sourcepub fn set_min_extra_nat_ips_needed<T>(self, v: T) -> Self
pub fn set_min_extra_nat_ips_needed<T>(self, v: T) -> Self
Sets the value of min_extra_nat_ips_needed.
§Example
let x = RouterStatusNatStatus::new().set_min_extra_nat_ips_needed(42);Sourcepub fn set_or_clear_min_extra_nat_ips_needed<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_min_extra_nat_ips_needed<T>(self, v: Option<T>) -> Self
Sets or clears the value of min_extra_nat_ips_needed.
§Example
let x = RouterStatusNatStatus::new().set_or_clear_min_extra_nat_ips_needed(Some(42));
let x = RouterStatusNatStatus::new().set_or_clear_min_extra_nat_ips_needed(None::<i32>);Sourcepub fn set_or_clear_name<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_name<T>(self, v: Option<T>) -> Self
Sourcepub fn set_num_vm_endpoints_with_nat_mappings<T>(self, v: T) -> Self
pub fn set_num_vm_endpoints_with_nat_mappings<T>(self, v: T) -> Self
Sets the value of num_vm_endpoints_with_nat_mappings.
§Example
let x = RouterStatusNatStatus::new().set_num_vm_endpoints_with_nat_mappings(42);Sourcepub fn set_or_clear_num_vm_endpoints_with_nat_mappings<T>(
self,
v: Option<T>,
) -> Self
pub fn set_or_clear_num_vm_endpoints_with_nat_mappings<T>( self, v: Option<T>, ) -> Self
Sets or clears the value of num_vm_endpoints_with_nat_mappings.
§Example
let x = RouterStatusNatStatus::new().set_or_clear_num_vm_endpoints_with_nat_mappings(Some(42));
let x = RouterStatusNatStatus::new().set_or_clear_num_vm_endpoints_with_nat_mappings(None::<i32>);Sourcepub fn set_rule_status<T, V>(self, v: T) -> Self
pub fn set_rule_status<T, V>(self, v: T) -> Self
Sets the value of rule_status.
§Example
use google_cloud_compute_v1::model::RouterStatusNatStatusNatRuleStatus;
let x = RouterStatusNatStatus::new()
.set_rule_status([
RouterStatusNatStatusNatRuleStatus::default()/* use setters */,
RouterStatusNatStatusNatRuleStatus::default()/* use (different) setters */,
]);Sourcepub fn set_user_allocated_nat_ip_resources<T, V>(self, v: T) -> Self
pub fn set_user_allocated_nat_ip_resources<T, V>(self, v: T) -> Self
Sets the value of user_allocated_nat_ip_resources.
§Example
let x = RouterStatusNatStatus::new().set_user_allocated_nat_ip_resources(["a", "b", "c"]);Sourcepub fn set_user_allocated_nat_ips<T, V>(self, v: T) -> Self
pub fn set_user_allocated_nat_ips<T, V>(self, v: T) -> Self
Sets the value of user_allocated_nat_ips.
§Example
let x = RouterStatusNatStatus::new().set_user_allocated_nat_ips(["a", "b", "c"]);Trait Implementations§
Source§impl Clone for RouterStatusNatStatus
impl Clone for RouterStatusNatStatus
Source§fn clone(&self) -> RouterStatusNatStatus
fn clone(&self) -> RouterStatusNatStatus
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more