describeVirtualGateway method

Future<DescribeVirtualGatewayOutput> describeVirtualGateway({
  1. required String meshName,
  2. required String virtualGatewayName,
  3. String? meshOwner,
})

Describes an existing virtual gateway.

May throw NotFoundException. May throw BadRequestException. May throw TooManyRequestsException. May throw ForbiddenException. May throw ServiceUnavailableException. May throw InternalServerErrorException.

Parameter meshName : The name of the service mesh that the gateway route resides in.

Parameter virtualGatewayName : The name of the virtual gateway to describe.

Parameter meshOwner : The AWS IAM account ID of the service mesh owner. If the account ID is not your own, then it's the ID of the account that shared the mesh with your account. For more information about mesh sharing, see Working with shared meshes.

Implementation

Future<DescribeVirtualGatewayOutput> describeVirtualGateway({
  required String meshName,
  required String virtualGatewayName,
  String? meshOwner,
}) async {
  ArgumentError.checkNotNull(meshName, 'meshName');
  _s.validateStringLength(
    'meshName',
    meshName,
    1,
    255,
    isRequired: true,
  );
  ArgumentError.checkNotNull(virtualGatewayName, 'virtualGatewayName');
  _s.validateStringLength(
    'virtualGatewayName',
    virtualGatewayName,
    1,
    255,
    isRequired: true,
  );
  _s.validateStringLength(
    'meshOwner',
    meshOwner,
    12,
    12,
  );
  final $query = <String, List<String>>{
    if (meshOwner != null) 'meshOwner': [meshOwner],
  };
  final response = await _protocol.sendRaw(
    payload: null,
    method: 'GET',
    requestUri:
        '/v20190125/meshes/${Uri.encodeComponent(meshName)}/virtualGateways/${Uri.encodeComponent(virtualGatewayName)}',
    queryParams: $query,
    exceptionFnMap: _exceptionFns,
  );
  final $json = await _s.jsonFromResponse(response);
  return DescribeVirtualGatewayOutput(
    virtualGateway: VirtualGatewayData.fromJson($json),
  );
}