createTransitVirtualInterface method

Future<CreateTransitVirtualInterfaceResult> createTransitVirtualInterface({
  1. required String connectionId,
  2. required NewTransitVirtualInterface newTransitVirtualInterface,
})

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. 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.

May throw DuplicateTagKeysException. May throw TooManyTagsException. May throw DirectConnectServerException. May throw DirectConnectClientException.

Parameter connectionId : The ID of the connection.

Parameter newTransitVirtualInterface : Information about the transit virtual interface.

Implementation

Future<CreateTransitVirtualInterfaceResult> createTransitVirtualInterface({
  required String connectionId,
  required NewTransitVirtualInterface newTransitVirtualInterface,
}) async {
  ArgumentError.checkNotNull(connectionId, 'connectionId');
  ArgumentError.checkNotNull(
      newTransitVirtualInterface, 'newTransitVirtualInterface');
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'OvertureService.CreateTransitVirtualInterface'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'connectionId': connectionId,
      'newTransitVirtualInterface': newTransitVirtualInterface,
    },
  );

  return CreateTransitVirtualInterfaceResult.fromJson(jsonResponse.body);
}