X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Ffacebook%2Ferrors%2FGraphApiErrorResponseErrorHandler.java;h=9df86a9dd2db187990b04f6e8229756b13563e50;hb=63e833064340517abf8c5a19d13efa96aeb8a563;hp=e2f52ff650eb042c57dcd99f1739faee7abdea9e;hpb=43f4a4cefb9d1b7d4837d2a718f424cd0e3af95d;p=facebook-errors diff --git a/src/main/java/de/juplo/facebook/errors/GraphApiErrorResponseErrorHandler.java b/src/main/java/de/juplo/facebook/errors/GraphApiErrorResponseErrorHandler.java index e2f52ff..9df86a9 100644 --- a/src/main/java/de/juplo/facebook/errors/GraphApiErrorResponseErrorHandler.java +++ b/src/main/java/de/juplo/facebook/errors/GraphApiErrorResponseErrorHandler.java @@ -55,25 +55,26 @@ public class GraphApiErrorResponseErrorHandler implements ResponseErrorHandler } - @Override - public boolean hasError(ClientHttpResponse response) throws IOException + private boolean hasGraphApiError(ClientHttpResponse response) throws IOException { return HttpStatus.Series.CLIENT_ERROR.equals(response.getStatusCode().series()); } @Override - public void handleError(final ClientHttpResponse response) throws IOException + public boolean hasError(ClientHttpResponse response) throws IOException { - GraphApiErrorResponseErrorHandler.handleError(parent, response); + return hasGraphApiError(response) || parent.hasError(response); } - public static void handleError( - final ResponseErrorHandler parent, - final ClientHttpResponse response - ) - throws - IOException + @Override + public void handleError(final ClientHttpResponse response) throws IOException { + if (!hasGraphApiError(response)) + { + parent.handleError(response); + return; + } + if (response.getBody() == null) { // There is no body to interpret in the HTTP-message