X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Ffacebook%2Ferrors%2FGraphApiException.java;h=2528e7ece6caf3031108e6db11220c1532dbcc92;hb=4c254dc37e6b29bd9aa872384ed3f6b60b1c20ac;hp=a781c3bcc17e4c8c463752e811a65630dd62ba45;hpb=8e762d99761ee8f640da3895c19fb711820c35d5;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 a781c3b..2528e7e 100644 --- a/src/main/java/de/juplo/facebook/errors/GraphApiException.java +++ b/src/main/java/de/juplo/facebook/errors/GraphApiException.java @@ -10,8 +10,12 @@ import java.io.IOException; import java.io.InputStream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.core.io.buffer.DataBuffer; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; +import org.springframework.http.ReactiveHttpInputMessage; +import org.springframework.web.reactive.function.BodyExtractor.Context; +import org.springframework.web.reactive.function.client.ClientResponse; @@ -42,6 +46,18 @@ public class GraphApiException extends RuntimeException } + + public static GraphApiException create(ClientResponse response) + { + return + response.body((ReactiveHttpInputMessage message, Context context) -> + { + DataBuffer buffer = message.getBody().blockFirst(); + InputStream is = message.getBody().blockFirst().asInputStream(); + return create(response.statusCode(), message.getHeaders(), is); + }); + } + public static GraphApiException create( HttpStatus status, HttpHeaders headers,