DirectConnect class

Direct Connect links your internal network to an Direct Connect location over a standard Ethernet fiber-optic cable. One end of the cable is connected to your router, the other to an Direct Connect router. With this connection in place, you can create virtual interfaces directly to the Amazon Web Services Cloud (for example, to Amazon EC2 and Amazon S3) and to Amazon VPC, bypassing Internet service providers in your network path. A connection provides access to all Amazon Web Services Regions except the China (Beijing) and (China) Ningxia Regions. Amazon Web Services resources in the China Regions can only be accessed through locations associated with those Regions.

Constructors

DirectConnect({required String region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

acceptDirectConnectGatewayAssociationProposal({required String associatedGatewayOwnerAccount, required String directConnectGatewayId, required String proposalId, List<RouteFilterPrefix>? overrideAllowedPrefixesToDirectConnectGateway}) Future<AcceptDirectConnectGatewayAssociationProposalResult>
Accepts a proposal request to attach a virtual private gateway or transit gateway to a Direct Connect gateway.
allocateConnectionOnInterconnect({required String bandwidth, required String connectionName, required String interconnectId, required String ownerAccount, required int vlan}) Future<Connection>
Allocates a VLAN number and a specified amount of bandwidth for use by a hosted connection on the specified interconnect.
allocateHostedConnection({required String bandwidth, required String connectionId, required String connectionName, required String ownerAccount, required int vlan, List<Tag>? tags}) Future<Connection>
Creates a hosted connection on the specified interconnect or a link aggregation group (LAG) of interconnects.
allocatePrivateVirtualInterface({required String connectionId, required NewPrivateVirtualInterfaceAllocation newPrivateVirtualInterfaceAllocation, required String ownerAccount}) Future<VirtualInterface>
Provisions a private virtual interface to be owned by the specified Amazon Web Services account.
allocatePublicVirtualInterface({required String connectionId, required NewPublicVirtualInterfaceAllocation newPublicVirtualInterfaceAllocation, required String ownerAccount}) Future<VirtualInterface>
Provisions a public virtual interface to be owned by the specified Amazon Web Services account.
allocateTransitVirtualInterface({required String connectionId, required NewTransitVirtualInterfaceAllocation newTransitVirtualInterfaceAllocation, required String ownerAccount}) Future<AllocateTransitVirtualInterfaceResult>
Provisions a transit virtual interface to be owned by the specified Amazon Web Services account. Use this type of interface to connect a transit gateway to your Direct Connect gateway.
associateConnectionWithLag({required String connectionId, required String lagId}) Future<Connection>
Associates an existing connection with a link aggregation group (LAG). The connection is interrupted and re-established as a member of the LAG (connectivity to Amazon Web Services is interrupted). The connection must be hosted on the same Direct Connect endpoint as the LAG, and its bandwidth must match the bandwidth for the LAG. You can re-associate a connection that's currently associated with a different LAG; however, if removing the connection would cause the original LAG to fall below its setting for minimum number of operational connections, the request fails.
associateHostedConnection({required String connectionId, required String parentConnectionId}) Future<Connection>
Associates a hosted connection and its virtual interfaces with a link aggregation group (LAG) or interconnect. If the target interconnect or LAG has an existing hosted connection with a conflicting VLAN number or IP address, the operation fails. This action temporarily interrupts the hosted connection's connectivity to Amazon Web Services as it is being migrated.
associateMacSecKey({required String connectionId, String? cak, String? ckn, String? secretARN}) Future<AssociateMacSecKeyResponse>
Associates a MAC Security (MACsec) Connection Key Name (CKN)/ Connectivity Association Key (CAK) pair with a Direct Connect connection.
associateVirtualInterface({required String connectionId, required String virtualInterfaceId}) Future<VirtualInterface>
Associates a virtual interface with a specified link aggregation group (LAG) or connection. Connectivity to Amazon Web Services is temporarily interrupted as the virtual interface is being migrated. If the target connection or LAG has an associated virtual interface with a conflicting VLAN number or a conflicting IP address, the operation fails.
close() → void
Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
confirmConnection({required String connectionId}) Future<ConfirmConnectionResponse>
Confirms the creation of the specified hosted connection on an interconnect.
confirmCustomerAgreement({String? agreementName}) Future<ConfirmCustomerAgreementResponse>
The confirmation of the terms of agreement when creating the connection/link aggregation group (LAG).
confirmPrivateVirtualInterface({required String virtualInterfaceId, String? directConnectGatewayId, String? virtualGatewayId}) Future<ConfirmPrivateVirtualInterfaceResponse>
Accepts ownership of a private virtual interface created by another Amazon Web Services account.
confirmPublicVirtualInterface({required String virtualInterfaceId}) Future<ConfirmPublicVirtualInterfaceResponse>
Accepts ownership of a public virtual interface created by another Amazon Web Services account.
confirmTransitVirtualInterface({required String directConnectGatewayId, required String virtualInterfaceId}) Future<ConfirmTransitVirtualInterfaceResponse>
Accepts ownership of a transit virtual interface created by another Amazon Web Services account.
createBGPPeer({NewBGPPeer? newBGPPeer, String? virtualInterfaceId}) Future<CreateBGPPeerResponse>
Creates a BGP peer on the specified virtual interface.
createConnection({required String bandwidth, required String connectionName, required String location, String? lagId, String? providerName, bool? requestMACSec, List<Tag>? tags}) Future<Connection>
Creates a connection between a customer network and a specific Direct Connect location.
createDirectConnectGateway({required String directConnectGatewayName, int? amazonSideAsn, List<Tag>? tags}) Future<CreateDirectConnectGatewayResult>
Creates a Direct Connect gateway, which is an intermediate object that enables you to connect a set of virtual interfaces and virtual private gateways. A Direct Connect gateway is global and visible in any Amazon Web Services Region after it is created. The virtual interfaces and virtual private gateways that are connected through a Direct Connect gateway can be in different Amazon Web Services Regions. This enables you to connect to a VPC in any Region, regardless of the Region in which the virtual interfaces are located, and pass traffic between them.
createDirectConnectGatewayAssociation({required String directConnectGatewayId, List<RouteFilterPrefix>? addAllowedPrefixesToDirectConnectGateway, String? gatewayId, String? virtualGatewayId}) Future<CreateDirectConnectGatewayAssociationResult>
Creates an association between a Direct Connect gateway and a virtual private gateway. The virtual private gateway must be attached to a VPC and must not be associated with another Direct Connect gateway.
createDirectConnectGatewayAssociationProposal({required String directConnectGatewayId, required String directConnectGatewayOwnerAccount, required String gatewayId, List<RouteFilterPrefix>? addAllowedPrefixesToDirectConnectGateway, List<RouteFilterPrefix>? removeAllowedPrefixesToDirectConnectGateway}) Future<CreateDirectConnectGatewayAssociationProposalResult>
Creates a proposal to associate the specified virtual private gateway or transit gateway with the specified Direct Connect gateway.
createInterconnect({required String bandwidth, required String interconnectName, required String location, String? lagId, String? providerName, bool? requestMACSec, List<Tag>? tags}) Future<Interconnect>
Creates an interconnect between an Direct Connect Partner's network and a specific Direct Connect location.
createLag({required String connectionsBandwidth, required String lagName, required String location, required int numberOfConnections, List<Tag>? childConnectionTags, String? connectionId, String? providerName, bool? requestMACSec, List<Tag>? tags}) Future<Lag>
Creates a link aggregation group (LAG) with the specified number of bundled physical dedicated connections between the customer network and a specific Direct Connect location. A LAG is a logical interface that uses the Link Aggregation Control Protocol (LACP) to aggregate multiple interfaces, enabling you to treat them as a single interface.
createPrivateVirtualInterface({required String connectionId, required NewPrivateVirtualInterface newPrivateVirtualInterface}) Future<VirtualInterface>
Creates a private virtual interface. A virtual interface is the VLAN that transports Direct Connect traffic. A private virtual interface can be connected to either a Direct Connect gateway or a Virtual Private Gateway (VGW). Connecting the private virtual interface to a Direct Connect gateway enables the possibility for connecting to multiple VPCs, including VPCs in different Amazon Web Services Regions. Connecting the private virtual interface to a VGW only provides access to a single VPC within the same Region.
createPublicVirtualInterface({required String connectionId, required NewPublicVirtualInterface newPublicVirtualInterface}) Future<VirtualInterface>
Creates a public virtual interface. A virtual interface is the VLAN that transports Direct Connect traffic. A public virtual interface supports sending traffic to public services of Amazon Web Services such as Amazon S3.
createTransitVirtualInterface({required String connectionId, required NewTransitVirtualInterface newTransitVirtualInterface}) Future<CreateTransitVirtualInterfaceResult>
Creates a transit virtual interface. A transit virtual interface should be used to access one or more transit gateways associated with Direct Connect gateways. A transit virtual interface enables the connection of multiple VPCs attached to a transit gateway to a Direct Connect gateway. A jumbo MTU value must be either 1500 or 8500. No other values will be accepted. Setting the MTU of a virtual interface to 8500 (jumbo frames) can cause an update to the underlying physical connection if it wasn't updated to support jumbo frames. Updating the connection disrupts network connectivity for all virtual interfaces associated with the connection for up to 30 seconds. To check whether your connection supports jumbo frames, call DescribeConnections. To check whether your virtual interface supports jumbo frames, call DescribeVirtualInterfaces.
deleteBGPPeer({int? asn, int? asnLong, String? bgpPeerId, String? customerAddress, String? virtualInterfaceId}) Future<DeleteBGPPeerResponse>
Deletes the specified BGP peer on the specified virtual interface with the specified customer address and ASN.
deleteConnection({required String connectionId}) Future<Connection>
Deletes the specified connection.
deleteDirectConnectGateway({required String directConnectGatewayId}) Future<DeleteDirectConnectGatewayResult>
Deletes the specified Direct Connect gateway. You must first delete all virtual interfaces that are attached to the Direct Connect gateway and disassociate all virtual private gateways associated with the Direct Connect gateway.
deleteDirectConnectGatewayAssociation({String? associationId, String? directConnectGatewayId, String? virtualGatewayId}) Future<DeleteDirectConnectGatewayAssociationResult>
Deletes the association between the specified Direct Connect gateway and virtual private gateway.
deleteDirectConnectGatewayAssociationProposal({required String proposalId}) Future<DeleteDirectConnectGatewayAssociationProposalResult>
Deletes the association proposal request between the specified Direct Connect gateway and virtual private gateway or transit gateway.
deleteInterconnect({required String interconnectId}) Future<DeleteInterconnectResponse>
Deletes the specified interconnect.
deleteLag({required String lagId}) Future<Lag>
Deletes the specified link aggregation group (LAG). You cannot delete a LAG if it has active virtual interfaces or hosted connections.
deleteVirtualInterface({required String virtualInterfaceId}) Future<DeleteVirtualInterfaceResponse>
Deletes a virtual interface.
describeConnectionLoa({required String connectionId, LoaContentType? loaContentType, String? providerName}) Future<DescribeConnectionLoaResponse>
The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is a document that your APN partner or service provider uses when establishing your cross connect to Amazon Web Services at the colocation facility. For more information, see Requesting Cross Connects at Direct Connect Locations in the Direct Connect User Guide.
describeConnections({String? connectionId, int? maxResults, String? nextToken}) Future<Connections>
Displays the specified connection or all connections in this Region.
describeConnectionsOnInterconnect({required String interconnectId}) Future<Connections>
May throw DirectConnectClientException. May throw DirectConnectServerException.
describeCustomerMetadata() Future<DescribeCustomerMetadataResponse>
Get and view a list of customer agreements, along with their signed status and whether the customer is an NNIPartner, NNIPartnerV2, or a nonPartner.
describeDirectConnectGatewayAssociationProposals({String? associatedGatewayId, String? directConnectGatewayId, int? maxResults, String? nextToken, String? proposalId}) Future<DescribeDirectConnectGatewayAssociationProposalsResult>
Describes one or more association proposals for connection between a virtual private gateway or transit gateway and a Direct Connect gateway.
describeDirectConnectGatewayAssociations({String? associatedGatewayId, String? associationId, String? directConnectGatewayId, int? maxResults, String? nextToken, String? virtualGatewayId}) Future<DescribeDirectConnectGatewayAssociationsResult>
Lists the associations between your Direct Connect gateways and virtual private gateways and transit gateways. You must specify one of the following:
describeDirectConnectGatewayAttachments({String? directConnectGatewayId, int? maxResults, String? nextToken, String? virtualInterfaceId}) Future<DescribeDirectConnectGatewayAttachmentsResult>
Lists the attachments between your Direct Connect gateways and virtual interfaces. You must specify a Direct Connect gateway, a virtual interface, or both. If you specify a Direct Connect gateway, the response contains all virtual interfaces attached to the Direct Connect gateway. If you specify a virtual interface, the response contains all Direct Connect gateways attached to the virtual interface. If you specify both, the response contains the attachment between the Direct Connect gateway and the virtual interface.
describeDirectConnectGateways({String? directConnectGatewayId, int? maxResults, String? nextToken}) Future<DescribeDirectConnectGatewaysResult>
Lists all your Direct Connect gateways or only the specified Direct Connect gateway. Deleted Direct Connect gateways are not returned.
describeHostedConnections({required String connectionId, int? maxResults, String? nextToken}) Future<Connections>
Lists the hosted connections that have been provisioned on the specified interconnect or link aggregation group (LAG).
describeInterconnectLoa({required String interconnectId, LoaContentType? loaContentType, String? providerName}) Future<DescribeInterconnectLoaResponse>
The Letter of Authorization - Connecting Facility Assignment (LOA-CFA) is a document that is used when establishing your cross connect to Amazon Web Services at the colocation facility. For more information, see Requesting Cross Connects at Direct Connect Locations in the Direct Connect User Guide.
describeInterconnects({String? interconnectId, int? maxResults, String? nextToken}) Future<Interconnects>
Lists the interconnects owned by the Amazon Web Services account or only the specified interconnect.
describeLags({String? lagId, int? maxResults, String? nextToken}) Future<Lags>
Describes all your link aggregation groups (LAG) or the specified LAG.
describeLoa({required String connectionId, LoaContentType? loaContentType, String? providerName}) Future<Loa>
Gets the LOA-CFA for a connection, interconnect, or link aggregation group (LAG).
describeLocations() Future<Locations>
Lists the Direct Connect locations in the current Amazon Web Services Region. These are the locations that can be selected when calling CreateConnection or CreateInterconnect.
describeRouterConfiguration({required String virtualInterfaceId, String? routerTypeIdentifier}) Future<DescribeRouterConfigurationResponse>
Details about the router.
describeTags({required List<String> resourceArns}) Future<DescribeTagsResponse>
Describes the tags associated with the specified Direct Connect resources.
describeVirtualGateways() Future<VirtualGateways>
You can create one or more Direct Connect private virtual interfaces linked to a virtual private gateway.
describeVirtualInterfaces({String? connectionId, int? maxResults, String? nextToken, String? virtualInterfaceId}) Future<VirtualInterfaces>
Displays all virtual interfaces for an Amazon Web Services account. Virtual interfaces deleted fewer than 15 minutes before you make the request are also returned. If you specify a connection ID, only the virtual interfaces associated with the connection are returned. If you specify a virtual interface ID, then only a single virtual interface is returned.
disassociateConnectionFromLag({required String connectionId, required String lagId}) Future<Connection>
Disassociates a connection from a link aggregation group (LAG). The connection is interrupted and re-established as a standalone connection (the connection is not deleted; to delete the connection, use the DeleteConnection request). If the LAG has associated virtual interfaces or hosted connections, they remain associated with the LAG. A disassociated connection owned by an Direct Connect Partner is automatically converted to an interconnect.
disassociateMacSecKey({required String connectionId, required String secretARN}) Future<DisassociateMacSecKeyResponse>
Removes the association between a MAC Security (MACsec) security key and a Direct Connect connection.
listVirtualInterfaceTestHistory({List<String>? bgpPeers, int? maxResults, String? nextToken, String? status, String? testId, String? virtualInterfaceId}) Future<ListVirtualInterfaceTestHistoryResponse>
Lists the virtual interface failover test history.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
startBgpFailoverTest({required String virtualInterfaceId, List<String>? bgpPeers, int? testDurationInMinutes}) Future<StartBgpFailoverTestResponse>
Starts the virtual interface failover test that verifies your configuration meets your resiliency requirements by placing the BGP peering session in the DOWN state. You can then send traffic to verify that there are no outages.
stopBgpFailoverTest({required String virtualInterfaceId}) Future<StopBgpFailoverTestResponse>
Stops the virtual interface failover test.
tagResource({required String resourceArn, required List<Tag> tags}) Future<void>
Adds the specified tags to the specified Direct Connect resource. Each resource can have a maximum of 50 tags.
toString() String
A string representation of this object.
inherited
untagResource({required String resourceArn, required List<String> tagKeys}) Future<void>
Removes one or more tags from the specified Direct Connect resource.
updateConnection({required String connectionId, String? connectionName, String? encryptionMode}) Future<Connection>
Updates the Direct Connect connection configuration.
updateDirectConnectGateway({required String directConnectGatewayId, required String newDirectConnectGatewayName}) Future<UpdateDirectConnectGatewayResponse>
Updates the name of a current Direct Connect gateway.
updateDirectConnectGatewayAssociation({List<RouteFilterPrefix>? addAllowedPrefixesToDirectConnectGateway, String? associationId, List<RouteFilterPrefix>? removeAllowedPrefixesToDirectConnectGateway}) Future<UpdateDirectConnectGatewayAssociationResult>
Updates the specified attributes of the Direct Connect gateway association.
updateLag({required String lagId, String? encryptionMode, String? lagName, int? minimumLinks}) Future<Lag>
Updates the attributes of the specified link aggregation group (LAG).
updateVirtualInterfaceAttributes({required String virtualInterfaceId, bool? enableSiteLink, int? mtu, String? virtualInterfaceName}) Future<VirtualInterface>
Updates the specified attributes of the specified virtual private interface.

Operators

operator ==(Object other) bool
The equality operator.
inherited