parseResponse<T> method
Implementation
BaseServiceResponse<T> parseResponse<T>(
List<int> bodyBytes, [
int? statusCode,
]) {
statusCode ??= 200;
if (!ServiceProviderUtils.isSuccessStatusCode(
statusCode,
allowSuccessStatusCodes: successStatusCodes,
)) {
return ServiceErrorResponse(
statusCode: statusCode,
error: ServiceProviderUtils.findError(
object: bodyBytes,
statusCode: statusCode,
allowStatusCode: errorStatusCodes,
),
);
}
try {
T response = ServiceProviderUtils.toResult<T>(bodyBytes);
return ServiceSuccessRespose<T>(
statusCode: statusCode,
response: response,
);
} catch (_) {}
throw RPCError(
message: "Parsing response failed.",
request: toJson(),
details: {"expected": "$T"},
);
}