aws_sdk_directconnect/client/create_interconnect.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 [`CreateInterconnect`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`interconnect_name(impl Into<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::interconnect_name) / [`set_interconnect_name(Option<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::set_interconnect_name):<br>required: **true**<br><p>The name of the interconnect.</p><br>
7 /// - [`bandwidth(impl Into<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::bandwidth) / [`set_bandwidth(Option<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::set_bandwidth):<br>required: **true**<br><p>The port bandwidth, in Gbps. The possible values are 1, 10, and 100.</p><br>
8 /// - [`location(impl Into<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::location) / [`set_location(Option<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::set_location):<br>required: **true**<br><p>The location of the interconnect.</p><br>
9 /// - [`lag_id(impl Into<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::lag_id) / [`set_lag_id(Option<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::set_lag_id):<br>required: **false**<br><p>The ID of the LAG.</p><br>
10 /// - [`tags(Tag)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::set_tags):<br>required: **false**<br><p>The tags to associate with the interconnect.</p><br>
11 /// - [`provider_name(impl Into<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::provider_name) / [`set_provider_name(Option<String>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::set_provider_name):<br>required: **false**<br><p>The name of the service provider associated with the interconnect.</p><br>
12 /// - [`request_mac_sec(bool)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::request_mac_sec) / [`set_request_mac_sec(Option<bool>)`](crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::set_request_mac_sec):<br>required: **false**<br><p>Indicates whether you want the interconnect to support MAC Security (MACsec).</p><br>
13 /// - On success, responds with [`CreateInterconnectOutput`](crate::operation::create_interconnect::CreateInterconnectOutput) with field(s):
14 /// - [`interconnect_id(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::interconnect_id): <p>The ID of the interconnect.</p>
15 /// - [`interconnect_name(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::interconnect_name): <p>The name of the interconnect.</p>
16 /// - [`interconnect_state(Option<InterconnectState>)`](crate::operation::create_interconnect::CreateInterconnectOutput::interconnect_state): <p>The state of the interconnect. The following are the possible values:</p> <ul> <li> <p><code>requested</code>: The initial state of an interconnect. The interconnect stays in the requested state until the Letter of Authorization (LOA) is sent to the customer.</p></li> <li> <p><code>pending</code>: The interconnect is approved, and is being initialized.</p></li> <li> <p><code>available</code>: The network link is up, and the interconnect is ready for use.</p></li> <li> <p><code>down</code>: The network link is down.</p></li> <li> <p><code>deleting</code>: The interconnect is being deleted.</p></li> <li> <p><code>deleted</code>: The interconnect is deleted.</p></li> <li> <p><code>unknown</code>: The state of the interconnect is not available.</p></li> </ul>
17 /// - [`region(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::region): <p>The Amazon Web Services Region where the connection is located.</p>
18 /// - [`location(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::location): <p>The location of the connection.</p>
19 /// - [`bandwidth(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::bandwidth): <p>The bandwidth of the connection.</p>
20 /// - [`loa_issue_time(Option<DateTime>)`](crate::operation::create_interconnect::CreateInterconnectOutput::loa_issue_time): <p>The time of the most recent call to <code>DescribeLoa</code> for this connection.</p>
21 /// - [`lag_id(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::lag_id): <p>The ID of the LAG.</p>
22 /// - [`aws_device(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::aws_device): <p>The Direct Connect endpoint on which the physical connection terminates.</p>
23 /// - [`jumbo_frame_capable(Option<bool>)`](crate::operation::create_interconnect::CreateInterconnectOutput::jumbo_frame_capable): <p>Indicates whether jumbo frames are supported.</p>
24 /// - [`aws_device_v2(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::aws_device_v2): <p>The Direct Connect endpoint that terminates the physical connection.</p>
25 /// - [`aws_logical_device_id(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::aws_logical_device_id): <p>The Direct Connect endpoint that terminates the logical connection. This device might be different than the device that terminates the physical connection.</p>
26 /// - [`has_logical_redundancy(Option<HasLogicalRedundancy>)`](crate::operation::create_interconnect::CreateInterconnectOutput::has_logical_redundancy): <p>Indicates whether the interconnect supports a secondary BGP in the same address family (IPv4/IPv6).</p>
27 /// - [`tags(Option<Vec::<Tag>>)`](crate::operation::create_interconnect::CreateInterconnectOutput::tags): <p>The tags associated with the interconnect.</p>
28 /// - [`provider_name(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::provider_name): <p>The name of the service provider associated with the interconnect.</p>
29 /// - [`mac_sec_capable(Option<bool>)`](crate::operation::create_interconnect::CreateInterconnectOutput::mac_sec_capable): <p>Indicates whether the interconnect supports MAC Security (MACsec).</p>
30 /// - [`port_encryption_status(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::port_encryption_status): <p>The MAC Security (MACsec) port link status.</p> <p>The valid values are <code>Encryption Up</code>, which means that there is an active Connection Key Name, or <code>Encryption Down</code>.</p>
31 /// - [`encryption_mode(Option<String>)`](crate::operation::create_interconnect::CreateInterconnectOutput::encryption_mode): <p>The MAC Security (MACsec) encryption mode.</p> <p>The valid values are <code>no_encrypt</code>, <code>should_encrypt</code>, and <code>must_encrypt</code>.</p>
32 /// - [`mac_sec_keys(Option<Vec::<MacSecKey>>)`](crate::operation::create_interconnect::CreateInterconnectOutput::mac_sec_keys): <p>The MAC Security (MACsec) security keys.</p>
33 /// - On failure, responds with [`SdkError<CreateInterconnectError>`](crate::operation::create_interconnect::CreateInterconnectError)
34 pub fn create_interconnect(&self) -> crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder {
35 crate::operation::create_interconnect::builders::CreateInterconnectFluentBuilder::new(self.handle.clone())
36 }
37}