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:com.jivesoftware.os.server.http.jetty.jersey.server.provider.DefaultJerseyMapperTest.java

@Test(dataProvider = "values")
public void roundtrip(Types in) throws IOException {
    String serialized = mapper.writeValueAsString(in);

    assertEquals(mapper.readValue(serialized, Types.class), in);

    {//from   w w  w .  j a  v a2 s.co  m
        ObjectNode n = mapper.convertValue(in, ObjectNode.class);
        assertEquals(n.get("z").getClass(), BooleanNode.class);

        assertEquals(n.get("b").getClass(), IntNode.class);
        assertEquals(n.get("s").getClass(), IntNode.class);
        assertEquals(n.get("c").getClass(), TextNode.class);
        assertEquals(n.get("i").getClass(), IntNode.class);
        assertEquals(n.get("j").getClass(), LongNode.class);

        assertEquals(n.get("f").getClass(), DoubleNode.class);
        assertEquals(n.get("d").getClass(), DoubleNode.class);

        assertEquals(n.get("t").getClass(), TextNode.class);
    }

    {
        ObjectNode n = mapper.readValue(serialized, ObjectNode.class);
        assertEquals(n.get("z").getClass(), BooleanNode.class);

        assertEquals(n.get("b").getClass(), TextNode.class);
        assertEquals(n.get("s").getClass(), TextNode.class);
        assertEquals(n.get("c").getClass(), TextNode.class);
        assertEquals(n.get("i").getClass(), TextNode.class);
        assertEquals(n.get("j").getClass(), TextNode.class);

        assertEquals(n.get("f").getClass(), TextNode.class);
        assertEquals(n.get("d").getClass(), TextNode.class);

        assertEquals(n.get("t").getClass(), TextNode.class);
    }
}

From source file:com.cloudmine.api.persistance.CMJacksonModule.java

public CMJacksonModule() {
    super("CustomModule", new Version(1, 0, 0, null));
    addSerializer(new JsonSerializer<Date>() {

        @Override//from w w  w . j  ava  2 s .  c  o m
        public void serialize(Date value, JsonGenerator jgen, SerializerProvider provider)
                throws IOException, JsonProcessingException {
            jgen.writeStartObject();
            jgen.writeRaw(JsonUtilities.convertDateToUnwrappedJsonClass(value));
            jgen.writeEndObject();
        }

        @Override
        public Class<Date> handledType() {
            return Date.class;
        }
    });

    addDeserializer(Date.class, new JsonDeserializer<Date>() {
        @Override
        public Date deserialize(JsonParser jp, DeserializationContext ctxt)
                throws IOException, JsonProcessingException {
            ObjectMapper mapper = (ObjectMapper) jp.getCodec();
            ObjectNode root = (ObjectNode) mapper.readTree(jp);
            JsonNode classNode = root.get(JsonUtilities.CLASS_KEY);
            boolean isDate = classNode != null && JsonUtilities.DATE_CLASS.equals(classNode.asText());
            if (isDate) {
                JsonNode timeNode = root.get(JsonUtilities.TIME_KEY);
                if (timeNode != null) {
                    Long seconds = timeNode.asLong();
                    Date date = new Date(seconds * 1000);
                    return date;
                }
            }
            return null;
        }
    });
    addSerializer(new JsonSerializer<SimpleCMObject>() {

        @Override
        public void serialize(SimpleCMObject value, JsonGenerator jgen, SerializerProvider provider)
                throws IOException {
            jgen.writeStartObject();
            String json = null;
            try {
                json = value.asUnkeyedObject();
            } catch (ConversionException e) {
                LOG.error("Error while serializing, sending empty json", e);
                json = JsonUtilities.EMPTY_JSON;
            }
            jgen.writeRaw(JsonUtilities.unwrap(json));
            jgen.writeEndObject();
        }

        @Override
        public Class<SimpleCMObject> handledType() {
            return SimpleCMObject.class;
        }
    });

    addSerializer(jsonSerializerForType(CMFile.class));
    addSerializer(jsonSerializerForType(CMSessionToken.class));
    addSerializer(jsonSerializerForType(CMType.class));
    addSerializer(jsonSerializerForType(TransportableString.class));
    addSerializer(jsonSerializerForType(ResponseBase.class));

}

From source file:net.mostlyharmless.jghservice.connector.jira.SearchIssues.java

@Override
public List<JiraEvent.Issue> processResponse(String jsonResponse) throws IOException {
    ObjectMapper m = new ObjectMapperProvider().getContext(JiraEvent.Issue.class);
    ObjectNode root = (ObjectNode) m.readTree(jsonResponse);
    JavaType t = m.getTypeFactory().constructCollectionType(List.class, JiraEvent.Issue.class);
    return m.convertValue(root.get("issues"), t);
}

From source file:io.syndesis.connector.catalog.ConnectorCatalog.java

private void addComponent(ObjectNode component) {
    ObjectNode meta = (ObjectNode) component.get("meta");
    Iterator<Map.Entry<String, JsonNode>> it = meta.fields();
    while (it.hasNext()) {
        Map.Entry<String, JsonNode> entry = it.next();
        String json = entry.getValue().asText();
        String javaType = extractJavaType(json);
        if (javaType != null) {
            camelCatalog.addComponent(entry.getKey(), javaType, json);
        }// w w w.j  a  v  a 2s .  c o  m
    }
}

From source file:architecture.ee.web.community.social.facebook.FacebookServiceProvider.java

protected String determinePostType(ObjectNode node) {
    if (node.has("type")) {
        try {// w ww.j  av a2 s. co  m
            String type = node.get("type").textValue();
            PostType.valueOf(type.toUpperCase());
            return type;
        } catch (IllegalArgumentException e) {
            return "post";
        }
    }
    return "post";
}

From source file:easyrpc.server.serialization.jsonrpc.JSONCallee.java

@Override
public byte[] matchMethod(Object object, byte[] callInfo) {
    try {/*  ww w  . j a  v  a  2s .c  o  m*/
        Object returnedObject = null;
        ObjectNode call = (ObjectNode) MAPPER.readTree(callInfo);

        String jsonrpc = call.get("jsonrpc").textValue();
        if (jsonrpc == null || !"2.0".equals(jsonrpc)) {
            throw new SerializationException(
                    "'jsonrpc' value must be '2.0' and actually is: '" + jsonrpc + "'");
        }

        String methodName = call.get("method").textValue();
        if (methodName == null)
            throw new SerializationException("The 'method' field must not be null: " + call.toString());

        Class iface = object.getClass();
        for (Method m : iface.getMethods()) {
            if (methodName.equals(m.getName())) {
                ArrayNode jsParams = (ArrayNode) call.get("params");
                if (jsParams == null || jsParams.size() == 0) {
                    try {
                        returnedObject = m.invoke(object);
                        //                            System.out.println("returnedObject = " + returnedObject);
                    } catch (Exception e) {
                        e.printStackTrace();
                        return returnJsonRpcError(call.get("id"), e);
                    }
                } else {
                    //                        System.out.println("methodName = " + methodName);
                    Object[] params = new Object[jsParams.size()];
                    for (int i = 0; i < params.length; i++) {
                        params[i] = MAPPER.convertValue(jsParams.get(i), m.getParameters()[i].getType());
                        //                            System.out.println("params[i] = " + params[i] + "("+ params[i].getClass().getName() +")");
                    }
                    try {
                        returnedObject = m.invoke(object, params);
                        //                            System.out.println("returnedObject = " + returnedObject);
                    } catch (Exception e) {
                        e.printStackTrace();
                        return returnJsonRpcError(call.get("id"), e);
                    }
                }
                break;
            }
        }
        ObjectNode jsret = JsonNodeFactory.instance.objectNode();
        jsret.put("jsonrpc", "2.0");
        jsret.put("id", call.get("id").toString());
        if (returnedObject != null) {
            addResult(jsret, returnedObject);
        }

        //            System.out.println("jsret.toString() = " + jsret.toString());
        return jsret.toString().getBytes();
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}

From source file:od.providers.api.EventController.java

@RequestMapping(value = "/api/proxy/event", method = RequestMethod.POST)
public JsonNode postEvent(@RequestBody ObjectNode object) throws Exception {
    ObjectMapper mapper = new ObjectMapper();
    ProviderOptions options = mapper.convertValue(object.get("options"), ProviderOptions.class);

    EventProvider eventProvider = providerService
            .getEventProvider(mongoTenantRepository.findOne(options.getTenantId()));
    return eventProvider.postEvent(object.get("caliperEvent"), options);
}

From source file:org.opencredo.couchdb.inbound.CouchDbAllDocumentsMessageSource.java

public Message<URI> receive() {
    if (toBeReceived.isEmpty()) {
        URI skipUri = UriComponentsBuilder.fromUri(databaseUri).replaceQueryParam("limit", limit)
                .replaceQueryParam("skip", skip).build().toUri();
        ObjectNode response = couchDbDocumentOperations.readDocument(skipUri, ObjectNode.class);
        ArrayNode rows = (ArrayNode) response.get("rows");
        int size = rows.size();
        Assert.isTrue(size <= limit, "Retrieved more rows than limit");
        for (int i = 0; i < size; i++) {
            JsonNode node = rows.get(i);
            String id = node.get("id").textValue();
            try {
                toBeReceived.add(new URI(baseUri + "/" + id));
                skip++;/*from  ww  w. ja v a  2 s.c  o m*/
            } catch (URISyntaxException e) {
                logger.error("Error creating the URI of document from baseUri and ID", e);
                return null;
            }
        }
    }

    Map<String, String> headers = createHeaderMap(databaseUri, skip, limit);
    return prepareMessage(toBeReceived.poll(), headers);
}

From source file:com.squarespace.template.ReferenceScannerTest.java

@Test
public void testBasic() throws CodeException, JsonProcessingException {
    ObjectNode result = scan("{.section nums}{.even? @foo}#{@|json}{.end}{.even?}#{.end}{.end}");
    render(result);/*from  w w  w. j a  va  2s  . com*/

    assertEquals(result.get("instructions").get("VARIABLE").asInt(), 1);
    assertEquals(result.get("instructions").get("SECTION").asInt(), 1);
    assertEquals(result.get("instructions").get("TEXT").asInt(), 2);
    assertEquals(result.get("instructions").get("PREDICATE").asInt(), 2);
    assertEquals(result.get("instructions").get("END").asInt(), 3);
    assertEquals(result.get("predicates").get("even?").asInt(), 2);
    assertEquals(result.get("formatters").get("json").asInt(), 1);
    assertTrue(result.get("variables").get("nums").isObject());
    assertEquals(result.get("textBytes").asInt(), 2);
    if (DEBUG) {
        String json = JsonUtils.getMapper().writerWithDefaultPrettyPrinter().writeValueAsString(result);
        System.out.println(json);
    }
}

From source file:com.almende.pi5.common.agents.LoggerAgent.java

@Override
public void onReady() {
    final ObjectNode config = getConfig();

    this.graphs = config.hasNonNull("clientUrl") ? URI.create(config.get("clientUrl").asText()) : null;

}