Example usage for com.fasterxml.jackson.databind.node ObjectNode get

List of usage examples for com.fasterxml.jackson.databind.node ObjectNode get

Introduction

In this page you can find the example usage for com.fasterxml.jackson.databind.node ObjectNode get.

Prototype

public JsonNode get(String paramString) 

Source Link

Usage

From source file:org.apache.streams.twitter.provider.TwitterEventClassifier.java

public static Class detectClass(String json) {
    Preconditions.checkNotNull(json);
    Preconditions.checkArgument(StringUtils.isNotEmpty(json));

    ObjectNode objectNode;/*from w ww  .  ja v  a2 s  .c om*/
    try {
        objectNode = (ObjectNode) mapper.readTree(json);
    } catch (IOException e) {
        e.printStackTrace();
        return null;
    }

    if (objectNode.findValue("retweeted_status") != null && objectNode.get("retweeted_status") != null)
        return Retweet.class;
    else if (objectNode.findValue("delete") != null)
        return Delete.class;
    else if (objectNode.findValue("friends") != null || objectNode.findValue("friends_str") != null)
        return FriendList.class;
    else if (objectNode.findValue("target_object") != null)
        return UserstreamEvent.class;
    else if (objectNode.findValue("location") != null && objectNode.findValue("user") == null)
        return User.class;
    else
        return Tweet.class;
}

From source file:controllers.FormsController.java

private static JsonNode generateFieldFromProperty(String fieldName) {
    Properties props = getPropertyFile();
    ObjectNode formElememt = Json.newObject();

    formElememt.put("name", fieldName);
    formElememt.put("label", props.getProperty(fieldName + "_label"));
    formElememt.put("type", props.getProperty(fieldName + "_type"));

    if (formElememt.get("type").asText().equalsIgnoreCase("list")) {
        try {/*  w  w  w. j  av a  2  s .c  om*/
            Class<?> cl = Class.forName("models.fixed." + Character.toString(fieldName.charAt(0)).toUpperCase()
                    + fieldName.substring(1));
            List<?> l = Ebean.find(cl).findList();
            formElememt.put("options", Json.toJson(l));
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(FormsController.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    ObjectNode validations = Json.newObject();
    validations.put("required", props.getProperty(fieldName + "_validations_required"));
    validations.put("pattern", props.getProperty(fieldName + "_validations_pattern"));
    formElememt.put("validations", validations);

    ObjectNode messages = Json.newObject();
    messages.put("invalid", props.getProperty(fieldName + "_validationmessages_invalid"));
    messages.put("required", props.getProperty(fieldName + "_validationmessages_required"));
    messages.put("pattern", props.getProperty(fieldName + "_validationmessages_pattern"));
    formElememt.put("validationMessages", messages);

    return Json.toJson(formElememt);
}

From source file:com.palominolabs.testutil.JsonAssert.java

public static void assertJsonObjectEquals(String msg, ObjectNode expected, ObjectNode actual) {

    Set<String> keySet1 = getKeySet(expected);

    assertSetEquals(msg + "/keySets", keySet1, getKeySet(actual));

    for (String key : keySet1) {

        JsonNode expectedVal = expected.get(key);
        JsonNode actualVal = actual.get(key);

        assertJsonNodeEquals(msg + "/key <" + key + ">", expectedVal, actualVal);
    }/*from  ww  w  .j  a  v a  2s.c o  m*/
}

From source file:com.github.reinert.jjschema.HyperSchemaGeneratorV4.java

private static <T> ObjectNode transformJsonToHyperSchema(Class<T> type, ObjectNode jsonSchema) {
    ObjectNode properties = (ObjectNode) jsonSchema.get("properties");
    Iterator<String> namesIterator = properties.fieldNames();

    while (namesIterator.hasNext()) {
        String prop = namesIterator.next();
        try {// w  w w.  j a v  a 2  s .c o  m
            Field field = type.getDeclaredField(prop);
            com.github.reinert.jjschema.Media media = field
                    .getAnnotation(com.github.reinert.jjschema.Media.class);
            if (media != null) {
                ObjectNode hyperProp = (ObjectNode) properties.get(prop);
                hyperProp.put(MEDIA_TYPE, media.type());
                hyperProp.put(BINARY_ENCODING, media.binaryEncoding());
                if (hyperProp.get("type").isArray()) {
                    TextNode typeString = new TextNode("string");
                    ((ArrayNode) hyperProp.get("type")).set(0, typeString);
                } else {
                    hyperProp.put("type", "string");
                }
                properties.put(prop, hyperProp);
            }
        } catch (NoSuchFieldException e) {
            //e.printStackTrace();
        } catch (SecurityException e) {
            //e.printStackTrace();
        }
    }
    return jsonSchema;
}

From source file:org.sead.repositories.reference.util.SEADGoogleLogin.java

static void getAuthCode() {
    access_token = null;/*from   ww  w.jav  a  2 s .  com*/
    expires_in = -1;
    token_start_time = -1;
    refresh_token = null;
    new File("refresh.txt").delete();

    if (gProps == null) {
        initGProps();
    }

    // Contact google for a user code
    CloseableHttpClient httpclient = HttpClients.createDefault();
    try {

        String codeUri = gProps.auth_uri.substring(0, gProps.auth_uri.length() - 4) + "device/code";

        HttpPost codeRequest = new HttpPost(codeUri);

        MultipartEntityBuilder meb = MultipartEntityBuilder.create();
        meb.addTextBody("client_id", gProps.client_id);
        meb.addTextBody("scope", "email profile");
        HttpEntity reqEntity = meb.build();

        codeRequest.setEntity(reqEntity);
        CloseableHttpResponse response = httpclient.execute(codeRequest);
        try {

            if (response.getStatusLine().getStatusCode() == 200) {
                HttpEntity resEntity = response.getEntity();
                if (resEntity != null) {
                    String responseJSON = EntityUtils.toString(resEntity);
                    ObjectNode root = (ObjectNode) new ObjectMapper().readTree(responseJSON);
                    device_code = root.get("device_code").asText();
                    user_code = root.get("user_code").asText();
                    verification_url = root.get("verification_url").asText();
                    expires_in = root.get("expires_in").asInt();
                }
            } else {
                log.error("Error response from Google: " + response.getStatusLine().getReasonPhrase());
            }
        } finally {
            response.close();
            httpclient.close();
        }
    } catch (IOException e) {
        log.error("Error reading sead-google.json or making http requests for code.");
        log.error(e.getMessage());
    }
}

From source file:org.apache.streams.data.util.JsonUtil.java

/**
 * Creates an empty array if missing//from  w  w w .j a  v  a2s  . com
 * @param node objectnode to create the object within
 * @param field location to create the object
 * @return the Map representing the extensions property
 */
public static ObjectNode ensureObject(ObjectNode node, String field) {
    String[] path = Lists.newArrayList(Splitter.on('.').split(field)).toArray(new String[0]);
    ObjectNode current = node;
    ObjectNode result = null;
    for (int i = 0; i < path.length; i++) {
        if (node.get(field) == null)
            node.put(field, mapper.createObjectNode());
        current = (ObjectNode) node.get(field);
    }
    result = ensureObject((ObjectNode) node.get(path[path.length]),
            Joiner.on('.').join(Arrays.copyOfRange(path, 1, path.length)));
    return result;
}

From source file:com.helger.wsdlgen.exchange.InterfaceReader.java

@Nonnull
private static ETriState _getTriState(@Nonnull final ObjectNode aType, final String sProperty) {
    final JsonNode aProp = aType.get(sProperty);
    return aProp == null ? ETriState.UNDEFINED : ETriState.valueOf(aProp.asBoolean());
}

From source file:org.sead.repositories.reference.util.SEADGoogleLogin.java

static void getTokensFromCode() {
    access_token = null;//from   w  w w . j  a v a  2  s  .c o  m
    expires_in = -1;
    token_start_time = -1;
    refresh_token = null;
    new File("refresh.txt").delete();

    if (gProps == null) {
        initGProps();
    }
    // Query for token now that user has gone through browser part
    // of
    // flow
    HttpPost tokenRequest = new HttpPost(gProps.token_uri);

    MultipartEntityBuilder tokenRequestParams = MultipartEntityBuilder.create();
    tokenRequestParams.addTextBody("client_id", gProps.client_id);
    tokenRequestParams.addTextBody("client_secret", gProps.client_secret);
    tokenRequestParams.addTextBody("code", device_code);
    tokenRequestParams.addTextBody("grant_type", "http://oauth.net/grant_type/device/1.0");

    HttpEntity reqEntity = tokenRequestParams.build();

    tokenRequest.setEntity(reqEntity);
    CloseableHttpClient httpclient = HttpClients.createDefault();
    CloseableHttpResponse response = null;
    try {
        response = httpclient.execute(tokenRequest);

        if (response.getStatusLine().getStatusCode() == 200) {
            HttpEntity resEntity = response.getEntity();
            if (resEntity != null) {
                String responseJSON = EntityUtils.toString(resEntity);
                ObjectNode root = (ObjectNode) new ObjectMapper().readTree(responseJSON);
                access_token = root.get("access_token").asText();
                refresh_token = root.get("refresh_token").asText();
                token_start_time = System.currentTimeMillis() / 1000;
                expires_in = root.get("expires_in").asInt();
            }
        } else {
            log.error("Error response from Google: " + response.getStatusLine().getReasonPhrase());
        }
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } finally {
        if (response != null) {
            try {
                response.close();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        try {
            httpclient.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}

From source file:com.helger.wsdlgen.exchange.InterfaceReader.java

@Nullable
private static String _getChildAsText(@Nonnull final ObjectNode aNode, final String sFieldName) {
    final JsonNode aChildNode = aNode.get(sFieldName);
    if (aChildNode == null)
        return null;
    return _cleanupText(aChildNode.asText());
}

From source file:org.sead.repositories.reference.util.SEADGoogleLogin.java

static void getTokenFromRefreshToken() {
    access_token = null;/*from w  w w  . j  a va 2  s . c o m*/
    expires_in = -1;
    token_start_time = -1;

    if (gProps == null) {
        initGProps();
    }

    /* Try refresh token */
    // Query for token now that user has gone through browser part
    // of
    // flow

    // The method used in getTokensFromCode should work here as well - I
    // think URL encoded Form is the recommended way...
    HttpPost post = new HttpPost(gProps.token_uri);
    post.addHeader("accept", "application/json");
    post.addHeader("Content-Type", "application/x-www-form-urlencoded");

    List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(4);
    nameValuePairs.add(new BasicNameValuePair("client_id", gProps.client_id));
    nameValuePairs.add(new BasicNameValuePair("client_secret", gProps.client_secret));
    nameValuePairs.add(new BasicNameValuePair("refresh_token", refresh_token));
    nameValuePairs.add(new BasicNameValuePair("grant_type", "refresh_token"));

    try {
        post.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    } catch (UnsupportedEncodingException e1) {
        e1.printStackTrace();
    }

    CloseableHttpClient httpclient = HttpClients.createDefault();
    CloseableHttpResponse response = null;
    try {
        try {
            response = httpclient.execute(post);
            if (response.getStatusLine().getStatusCode() == 200) {
                HttpEntity resEntity = response.getEntity();
                if (resEntity != null) {
                    String responseJSON = EntityUtils.toString(resEntity);
                    ObjectNode root = (ObjectNode) new ObjectMapper().readTree(responseJSON);
                    access_token = root.get("access_token").asText();
                    // refresh_token =
                    // root.get("refresh_token").asText();
                    token_start_time = System.currentTimeMillis() / 1000;
                    expires_in = root.get("expires_in").asInt();
                }
            } else {
                log.error("Error response from Google: " + response.getStatusLine().getReasonPhrase());
                HttpEntity resEntity = response.getEntity();
            }
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            log.error("Error obtaining access token: " + e.getMessage());
        } finally {
            if (response != null) {
                response.close();
            }
            httpclient.close();
        }
    } catch (IOException io) {
        log.error("Error closing connections: " + io.getMessage());
    }
}