Example usage for org.springframework.social.facebook.api FacebookError FacebookError

List of usage examples for org.springframework.social.facebook.api FacebookError FacebookError

Introduction

In this page you can find the example usage for org.springframework.social.facebook.api FacebookError FacebookError.

Prototype

public FacebookError(Integer code, String type, String message, Integer subcode, String userMessage,
            String userTitle) 

Source Link

Usage

From source file:pl.sgorecki.facebook.marketing.ads.impl.FacebookAdsErrorHandler.java

private FacebookError extractErrorFromResponse(ClientHttpResponse response) throws IOException {
    String json = readResponseJson(response);
    try {//from   ww  w  .j  av a2 s .c om
        ObjectMapper mapper = new ObjectMapper(new JsonFactory());
        JsonNode jsonNode = mapper.readValue(json, JsonNode.class);
        if (jsonNode.has("error")) {
            JsonNode errorNode = jsonNode.get("error");
            Integer code = errorNode.has("code") ? errorNode.get("code").intValue() : null;
            String type = errorNode.has("type") ? errorNode.get("type").asText() : null;
            String message = errorNode.has("message") ? errorNode.get("message").asText() : null;
            Integer subcode = errorNode.has("error_subcode") ? errorNode.get("error_subcode").intValue() : null;
            String userMessage = errorNode.has("error_user_msg") ? errorNode.get("error_user_msg").asText()
                    : null;
            String userTitle = errorNode.has("error_user_title") ? errorNode.get("error_user_title").asText()
                    : null;

            FacebookError error = new FacebookError(code, type, message, subcode, userMessage, userTitle);
            if (logger.isDebugEnabled()) {
                logger.debug("Facebook error: ");
                logger.debug("   CODE        : " + error.getCode());
                logger.debug("   TYPE        : " + error.getType());
                logger.debug("   SUBCODE     : " + error.getSubcode());
                logger.debug("   MESSAGE     : " + error.getMessage());
                logger.debug("   USER TITLE  : " + error.getUserTitle());
                logger.debug("   USER MESSAGE: " + error.getUserMessage());
            }
            return error;
        }
    } catch (JsonParseException e) {
        return null;
    }
    return null;
}