associateTransitGatewayConnectPeer method

Future<AssociateTransitGatewayConnectPeerResponse> associateTransitGatewayConnectPeer({
  1. required String deviceId,
  2. required String globalNetworkId,
  3. required String transitGatewayConnectPeerArn,
  4. String? linkId,
})

Associates a transit gateway Connect peer with a device, and optionally, with a link. If you specify a link, it must be associated with the specified device.

You can only associate transit gateway Connect peers that have been created on a transit gateway that's registered in your global network.

You cannot associate a transit gateway Connect peer with more than one device and link.

May throw ValidationException. May throw ServiceQuotaExceededException. May throw AccessDeniedException. May throw ResourceNotFoundException. May throw ConflictException. May throw ThrottlingException. May throw InternalServerException.

Parameter deviceId : The ID of the device.

Parameter globalNetworkId : The ID of the global network.

Parameter transitGatewayConnectPeerArn : The Amazon Resource Name (ARN) of the Connect peer.

Parameter linkId : The ID of the link.

Implementation

Future<AssociateTransitGatewayConnectPeerResponse>
    associateTransitGatewayConnectPeer({
  required String deviceId,
  required String globalNetworkId,
  required String transitGatewayConnectPeerArn,
  String? linkId,
}) async {
  ArgumentError.checkNotNull(deviceId, 'deviceId');
  ArgumentError.checkNotNull(globalNetworkId, 'globalNetworkId');
  ArgumentError.checkNotNull(
      transitGatewayConnectPeerArn, 'transitGatewayConnectPeerArn');
  final $payload = <String, dynamic>{
    'DeviceId': deviceId,
    'TransitGatewayConnectPeerArn': transitGatewayConnectPeerArn,
    if (linkId != null) 'LinkId': linkId,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri:
        '/global-networks/${Uri.encodeComponent(globalNetworkId)}/transit-gateway-connect-peer-associations',
    exceptionFnMap: _exceptionFns,
  );
  return AssociateTransitGatewayConnectPeerResponse.fromJson(response);
}