pub struct CreateNatGatewayFluentBuilder { /* private fields */ }
Expand description
Fluent builder constructing a request to CreateNatGateway
.
Creates a NAT gateway in the specified subnet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. You can create either a public NAT gateway or a private NAT gateway.
With a public NAT gateway, internet-bound traffic from a private subnet can be routed to the NAT gateway, so that instances in a private subnet can connect to the internet.
With a private NAT gateway, private communication is routed across VPCs and on-premises networks through a transit gateway or virtual private gateway. Common use cases include running large workloads behind a small pool of allowlisted IPv4 addresses, preserving private IPv4 addresses, and communicating between overlapping networks.
For more information, see NAT gateways in the Amazon VPC User Guide.
When you create a public NAT gateway and assign it an EIP or secondary EIPs, the network border group of the EIPs must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. If it's not the same, the NAT gateway will fail to launch. You can see the network border group for the subnet's AZ by viewing the details of the subnet. Similarly, you can view the network border group of an EIP by viewing the details of the EIP address. For more information about network border groups and EIPs, see Allocate an Elastic IP address in the Amazon VPC User Guide.
Implementations§
Source§impl CreateNatGatewayFluentBuilder
impl CreateNatGatewayFluentBuilder
Sourcepub fn as_input(&self) -> &CreateNatGatewayInputBuilder
pub fn as_input(&self) -> &CreateNatGatewayInputBuilder
Access the CreateNatGateway as a reference.
Sourcepub async fn send(
self,
) -> Result<CreateNatGatewayOutput, SdkError<CreateNatGatewayError, HttpResponse>>
pub async fn send( self, ) -> Result<CreateNatGatewayOutput, SdkError<CreateNatGatewayError, HttpResponse>>
Sends the request and returns the response.
If an error occurs, an SdkError
will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
Sourcepub fn customize(
self,
) -> CustomizableOperation<CreateNatGatewayOutput, CreateNatGatewayError, Self>
pub fn customize( self, ) -> CustomizableOperation<CreateNatGatewayOutput, CreateNatGatewayError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
Sourcepub fn allocation_id(self, input: impl Into<String>) -> Self
pub fn allocation_id(self, input: impl Into<String>) -> Self
\[Public NAT gateways only\] The allocation ID of an Elastic IP address to associate with the NAT gateway. You cannot specify an Elastic IP address with a private NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.
Sourcepub fn set_allocation_id(self, input: Option<String>) -> Self
pub fn set_allocation_id(self, input: Option<String>) -> Self
\[Public NAT gateways only\] The allocation ID of an Elastic IP address to associate with the NAT gateway. You cannot specify an Elastic IP address with a private NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.
Sourcepub fn get_allocation_id(&self) -> &Option<String>
pub fn get_allocation_id(&self) -> &Option<String>
\[Public NAT gateways only\] The allocation ID of an Elastic IP address to associate with the NAT gateway. You cannot specify an Elastic IP address with a private NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.
Sourcepub fn client_token(self, input: impl Into<String>) -> Self
pub fn client_token(self, input: impl Into<String>) -> Self
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.
Constraint: Maximum 64 ASCII characters.
Sourcepub fn set_client_token(self, input: Option<String>) -> Self
pub fn set_client_token(self, input: Option<String>) -> Self
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.
Constraint: Maximum 64 ASCII characters.
Sourcepub fn get_client_token(&self) -> &Option<String>
pub fn get_client_token(&self) -> &Option<String>
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.
Constraint: Maximum 64 ASCII characters.
Sourcepub fn dry_run(self, input: bool) -> Self
pub fn dry_run(self, input: bool) -> Self
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Sourcepub fn set_dry_run(self, input: Option<bool>) -> Self
pub fn set_dry_run(self, input: Option<bool>) -> Self
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Sourcepub fn get_dry_run(&self) -> &Option<bool>
pub fn get_dry_run(&self) -> &Option<bool>
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Sourcepub fn subnet_id(self, input: impl Into<String>) -> Self
pub fn subnet_id(self, input: impl Into<String>) -> Self
The ID of the subnet in which to create the NAT gateway.
Sourcepub fn set_subnet_id(self, input: Option<String>) -> Self
pub fn set_subnet_id(self, input: Option<String>) -> Self
The ID of the subnet in which to create the NAT gateway.
Sourcepub fn get_subnet_id(&self) -> &Option<String>
pub fn get_subnet_id(&self) -> &Option<String>
The ID of the subnet in which to create the NAT gateway.
Sourcepub fn tag_specifications(self, input: TagSpecification) -> Self
pub fn tag_specifications(self, input: TagSpecification) -> Self
Appends an item to TagSpecifications
.
To override the contents of this collection use set_tag_specifications
.
The tags to assign to the NAT gateway.
Sourcepub fn set_tag_specifications(
self,
input: Option<Vec<TagSpecification>>,
) -> Self
pub fn set_tag_specifications( self, input: Option<Vec<TagSpecification>>, ) -> Self
The tags to assign to the NAT gateway.
Sourcepub fn get_tag_specifications(&self) -> &Option<Vec<TagSpecification>>
pub fn get_tag_specifications(&self) -> &Option<Vec<TagSpecification>>
The tags to assign to the NAT gateway.
Sourcepub fn connectivity_type(self, input: ConnectivityType) -> Self
pub fn connectivity_type(self, input: ConnectivityType) -> Self
Indicates whether the NAT gateway supports public or private connectivity. The default is public connectivity.
Sourcepub fn set_connectivity_type(self, input: Option<ConnectivityType>) -> Self
pub fn set_connectivity_type(self, input: Option<ConnectivityType>) -> Self
Indicates whether the NAT gateway supports public or private connectivity. The default is public connectivity.
Sourcepub fn get_connectivity_type(&self) -> &Option<ConnectivityType>
pub fn get_connectivity_type(&self) -> &Option<ConnectivityType>
Indicates whether the NAT gateway supports public or private connectivity. The default is public connectivity.
Sourcepub fn private_ip_address(self, input: impl Into<String>) -> Self
pub fn private_ip_address(self, input: impl Into<String>) -> Self
The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.
Sourcepub fn set_private_ip_address(self, input: Option<String>) -> Self
pub fn set_private_ip_address(self, input: Option<String>) -> Self
The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.
Sourcepub fn get_private_ip_address(&self) -> &Option<String>
pub fn get_private_ip_address(&self) -> &Option<String>
The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.
Sourcepub fn secondary_allocation_ids(self, input: impl Into<String>) -> Self
pub fn secondary_allocation_ids(self, input: impl Into<String>) -> Self
Appends an item to SecondaryAllocationIds
.
To override the contents of this collection use set_secondary_allocation_ids
.
Secondary EIP allocation IDs. For more information, see Create a NAT gateway in the Amazon VPC User Guide.
Sourcepub fn set_secondary_allocation_ids(self, input: Option<Vec<String>>) -> Self
pub fn set_secondary_allocation_ids(self, input: Option<Vec<String>>) -> Self
Secondary EIP allocation IDs. For more information, see Create a NAT gateway in the Amazon VPC User Guide.
Sourcepub fn get_secondary_allocation_ids(&self) -> &Option<Vec<String>>
pub fn get_secondary_allocation_ids(&self) -> &Option<Vec<String>>
Secondary EIP allocation IDs. For more information, see Create a NAT gateway in the Amazon VPC User Guide.
Sourcepub fn secondary_private_ip_addresses(self, input: impl Into<String>) -> Self
pub fn secondary_private_ip_addresses(self, input: impl Into<String>) -> Self
Appends an item to SecondaryPrivateIpAddresses
.
To override the contents of this collection use set_secondary_private_ip_addresses
.
Secondary private IPv4 addresses. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.
Sourcepub fn set_secondary_private_ip_addresses(
self,
input: Option<Vec<String>>,
) -> Self
pub fn set_secondary_private_ip_addresses( self, input: Option<Vec<String>>, ) -> Self
Secondary private IPv4 addresses. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.
Sourcepub fn get_secondary_private_ip_addresses(&self) -> &Option<Vec<String>>
pub fn get_secondary_private_ip_addresses(&self) -> &Option<Vec<String>>
Secondary private IPv4 addresses. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.
Sourcepub fn secondary_private_ip_address_count(self, input: i32) -> Self
pub fn secondary_private_ip_address_count(self, input: i32) -> Self
\[Private NAT gateway only\] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.
Sourcepub fn set_secondary_private_ip_address_count(self, input: Option<i32>) -> Self
pub fn set_secondary_private_ip_address_count(self, input: Option<i32>) -> Self
\[Private NAT gateway only\] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.
Sourcepub fn get_secondary_private_ip_address_count(&self) -> &Option<i32>
pub fn get_secondary_private_ip_address_count(&self) -> &Option<i32>
\[Private NAT gateway only\] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.
Trait Implementations§
Source§impl Clone for CreateNatGatewayFluentBuilder
impl Clone for CreateNatGatewayFluentBuilder
Source§fn clone(&self) -> CreateNatGatewayFluentBuilder
fn clone(&self) -> CreateNatGatewayFluentBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for CreateNatGatewayFluentBuilder
impl !RefUnwindSafe for CreateNatGatewayFluentBuilder
impl Send for CreateNatGatewayFluentBuilder
impl Sync for CreateNatGatewayFluentBuilder
impl Unpin for CreateNatGatewayFluentBuilder
impl !UnwindSafe for CreateNatGatewayFluentBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);