diff --git a/build.gradle b/build.gradle index d71e143..85534fe 100644 --- a/build.gradle +++ b/build.gradle @@ -19,7 +19,7 @@ plugins { } group 'ee.bitweb' -version '4.0.1' +version '4.0.2' java { sourceCompatibility = '17' } diff --git a/src/main/java/ee/bitweb/core/retrofit/logging/mappers/RetrofitResponseBodyMapper.java b/src/main/java/ee/bitweb/core/retrofit/logging/mappers/RetrofitResponseBodyMapper.java index 774daa4..19d7f8d 100644 --- a/src/main/java/ee/bitweb/core/retrofit/logging/mappers/RetrofitResponseBodyMapper.java +++ b/src/main/java/ee/bitweb/core/retrofit/logging/mappers/RetrofitResponseBodyMapper.java @@ -66,7 +66,6 @@ protected String sanitizeBody(String body) { private String parseBody(Response response) throws IOException { var responseBody = response.body(); var contentType = responseBody.contentType(); - var contentLength = responseBody.contentLength(); var charset = contentType != null ? contentType.charset(UTF_8) : UTF_8; var source = responseBody.source(); @@ -84,18 +83,16 @@ private String parseBody(Response response) throws IOException { return "(binary %s-byte body omitted)".formatted(buffer.size()); } - if (contentLength != 0L) { - var bodyString = buffer.clone().readString(charset); - if (contentLength > maxLoggableResponseSize) { - return "%s ... Content size: %s characters".formatted( - bodyString.substring(0, maxLoggableResponseSize), - contentLength - ); - } + var bodyString = buffer.clone().readString(charset); + var bodyStringLength = bodyString != null ? bodyString.length() : 0; - return sanitizeBody(bodyString); + if (bodyStringLength > maxLoggableResponseSize) { + return "%s ... Content size: %s characters".formatted( + bodyString.substring(0, maxLoggableResponseSize), + bodyStringLength + ); } else { - return ""; + return sanitizeBody(bodyString); } } }