sendRequest<T extends OpenApiResponse> method
Future<T>
sendRequest<T extends OpenApiResponse>(
- OpenApiClientRequest request,
- Map<
String, ResponseParser< parserMapT> >
Implementation
Future<T> sendRequest<T extends OpenApiResponse>(OpenApiClientRequest request,
Map<String, ResponseParser<T>> parserMap) async {
for (final security in request.securityRequirement) {
for (final scheme in security.schemes) {
final data = _securitySchemeData[scheme.scheme];
if (data == null) {
_logger.warning('Missing security scheme data for request.'
' $scheme to ${request.path}');
continue;
}
scheme.scheme.applyToRequest(request, data);
}
}
final response = await requestSender.sendRequest(baseUri, request);
final parser =
parserMap[response.status.toString()] ?? parserMap['default'];
if (parser == null) {
throw UnexpectedResponseException(
response: response,
request: request,
status: response.status,
);
}
final parsedResponse = await parser(response);
parsedResponse.headers.addAll(response.headers);
return parsedResponse;
}