X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Ffacebook%2Ferrors%2FGraphApiException.java;h=ce3836ca83e0127eaa6d17f223b40acb7f6ff749;hb=f16862b51e98a30710fe20dc867110d48bb03be3;hp=2e56e62e0c37e0bdfdb3e9949f10dc929c957c69;hpb=14d0788aed0305a814fc87bc33f3f17771dc6858;p=facebook-errors diff --git a/src/main/java/de/juplo/facebook/errors/GraphApiException.java b/src/main/java/de/juplo/facebook/errors/GraphApiException.java index 2e56e62..ce3836c 100644 --- a/src/main/java/de/juplo/facebook/errors/GraphApiException.java +++ b/src/main/java/de/juplo/facebook/errors/GraphApiException.java @@ -10,8 +10,10 @@ import java.io.IOException; import java.io.InputStream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.core.io.buffer.DataBufferUtils; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; +import org.springframework.web.reactive.function.BodyExtractors; import org.springframework.web.reactive.function.client.ClientResponse; import reactor.core.publisher.Mono; @@ -45,13 +47,12 @@ public class GraphApiException extends RuntimeException - public static GraphApiException create(ClientResponse response) + public static Mono create(ClientResponse response) { - Mono body = + return response - .bodyToMono(String.class); - Mono e = body - .map(str -> create(response.statusCode(), null, str.getBytes())); + .createException() + .map(we -> create(response.statusCode(), response.headers().asHttpHeaders(), we.getResponseBodyAsByteArray())); } public static GraphApiException create(