aws_sdk_ec2/client/
create_vpn_connection.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`CreateVpnConnection`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`customer_gateway_id(impl Into<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::customer_gateway_id) / [`set_customer_gateway_id(Option<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::set_customer_gateway_id):<br>required: **true**<br><p>The ID of the customer gateway.</p><br>
7    ///   - [`r#type(impl Into<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::type) / [`set_type(Option<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::set_type):<br>required: **true**<br><p>The type of VPN connection (<code>ipsec.1</code>).</p><br>
8    ///   - [`vpn_gateway_id(impl Into<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::vpn_gateway_id) / [`set_vpn_gateway_id(Option<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::set_vpn_gateway_id):<br>required: **false**<br><p>The ID of the virtual private gateway. If you specify a virtual private gateway, you cannot specify a transit gateway.</p><br>
9    ///   - [`transit_gateway_id(impl Into<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::transit_gateway_id) / [`set_transit_gateway_id(Option<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::set_transit_gateway_id):<br>required: **false**<br><p>The ID of the transit gateway. If you specify a transit gateway, you cannot specify a virtual private gateway.</p><br>
10    ///   - [`tag_specifications(TagSpecification)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::tag_specifications) / [`set_tag_specifications(Option<Vec::<TagSpecification>>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::set_tag_specifications):<br>required: **false**<br><p>The tags to apply to the VPN connection.</p><br>
11    ///   - [`pre_shared_key_storage(impl Into<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::pre_shared_key_storage) / [`set_pre_shared_key_storage(Option<String>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::set_pre_shared_key_storage):<br>required: **false**<br><p>Specifies the storage mode for the pre-shared key (PSK). Valid values are <code>Standard</code>" (stored in the Site-to-Site VPN service) or <code>SecretsManager</code> (stored in Amazon Web Services Secrets Manager).</p><br>
12    ///   - [`dry_run(bool)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::set_dry_run):<br>required: **false**<br><p>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 <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p><br>
13    ///   - [`options(VpnConnectionOptionsSpecification)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::options) / [`set_options(Option<VpnConnectionOptionsSpecification>)`](crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::set_options):<br>required: **false**<br><p>The options for the VPN connection.</p><br>
14    /// - On success, responds with [`CreateVpnConnectionOutput`](crate::operation::create_vpn_connection::CreateVpnConnectionOutput) with field(s):
15    ///   - [`vpn_connection(Option<VpnConnection>)`](crate::operation::create_vpn_connection::CreateVpnConnectionOutput::vpn_connection): <p>Information about the VPN connection.</p>
16    /// - On failure, responds with [`SdkError<CreateVpnConnectionError>`](crate::operation::create_vpn_connection::CreateVpnConnectionError)
17    pub fn create_vpn_connection(&self) -> crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder {
18        crate::operation::create_vpn_connection::builders::CreateVpnConnectionFluentBuilder::new(self.handle.clone())
19    }
20}