build method

  1. @override
RoundTrip build(
  1. RoundTrip rt
)
override

Implementation

@override
RoundTrip build(RoundTrip rt) {
  return (request) async {
    var logger = Logger.current;

    var requestStart = DateTime.now();

    var response = await rt(request);

    if (response.statusCode >= HttpStatus.badRequest) {
      if (response.statusCode >= HttpStatus.internalServerError) {
        logger?.error(
          ResponseException(response.statusCode, response: response),
          _logEntities(response, requestStart),
        );
      } else {
        logger?.info(_logEntities(response, requestStart));
      }
    } else {
      logger?.info(_logEntities(response, requestStart));
    }

    return response;
  };
}