Example usage for com.fasterxml.jackson.core JsonParser setCodec

List of usage examples for com.fasterxml.jackson.core JsonParser setCodec

Introduction

In this page you can find the example usage for com.fasterxml.jackson.core JsonParser setCodec.

Prototype

public abstract void setCodec(ObjectCodec c);

Source Link

Document

Setter that allows defining ObjectCodec associated with this parser, if any.

Usage

From source file:org.apache.parquet.cli.json.AvroJson.java

public static Iterator<JsonNode> parser(final InputStream stream) {
    try {//w  w w.  j a va  2  s . c o m
        JsonParser parser = FACTORY.createParser(stream);
        parser.setCodec(new ObjectMapper());
        return parser.readValuesAs(JsonNode.class);
    } catch (IOException e) {
        throw new RuntimeIOException("Cannot read from stream", e);
    }
}

From source file:com.microsoft.azure.serializer.CloudErrorDeserializer.java

@Override
public CloudError deserialize(JsonParser p, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    JsonNode topNode = p.readValueAsTree();
    if (topNode == null) {
        return null;
    }//from  ww w .  j  a  va2  s . c om
    JsonNode errorNode = topNode.get("error");
    if (errorNode == null) {
        return null;
    }
    JsonParser parser = new JsonFactory().createParser(errorNode.toString());
    parser.setCodec(mapper);
    return parser.readValueAs(CloudError.class);
}

From source file:com.basistech.AfterburnerOopsTest.java

@Test
public void oops() throws Exception {
    SmileFactory smileFactory = new SmileFactory();
    ObjectMapper mapper = new ObjectMapper(smileFactory);
    mapper = AnnotatedDataModelModule.setupObjectMapper(mapper);

    EntityMention em = new EntityMention();
    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
    List<EntityMention> mentions = Lists.newArrayList();
    mentions.add(em);//from   w w  w  .  j ava2s .  com
    mapper.writeValue(byteArrayOutputStream, mentions);

    mapper = AnnotatedDataModelModule.setupObjectMapper(new ObjectMapper(smileFactory));
    mapper.registerModule(new AfterburnerModule());
    JsonParser jp = smileFactory.createParser(new ByteArrayInputStream(byteArrayOutputStream.toByteArray()));
    jp.setCodec(mapper);

    JsonToken current;
    current = jp.nextToken();
    if (current != JsonToken.START_ARRAY) {
        System.err.println("Error: root should be array: quiting.");
        return;
    }

    while (jp.nextToken() != JsonToken.END_ARRAY) {
        jp.readValueAs(EntityMention.class);
    }

}

From source file:org.agorava.facebook.jackson.ReferenceListDeserializer.java

@SuppressWarnings("unchecked")
@Override/*from  w  ww .  j av a  2  s  .  c  o m*/
public List<Reference> deserialize(JsonParser jp, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    ObjectMapper mapper = getInstance().resolve(ObjectMapper.class);
    jp.setCodec(mapper);
    if (jp.hasCurrentToken()) {
        JsonNode dataNode = (JsonNode) jp.readValueAs(JsonNode.class).get("data");
        if (dataNode != null) {
            return (List<Reference>) mapper.reader(new TypeReference<List<Reference>>() {
            }).readValue(dataNode);
        }
    }

    return Collections.emptyList();
}

From source file:org.agorava.facebook.jackson.CommentListAndCountDeserializer.java

@SuppressWarnings("unchecked")
@Override/*from   w w w . j a v a  2s.c  o m*/
public ListAndCount<Comment> deserialize(JsonParser jp, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    ObjectMapper mapper = getInstance().resolve(ObjectMapper.class);
    jp.setCodec(mapper);
    if (jp.hasCurrentToken()) {
        JsonNode commentsNode = jp.readValueAs(JsonNode.class);
        JsonNode dataNode = commentsNode.get("data");
        List<Comment> commentsList = dataNode != null
                ? (List<Comment>) mapper.reader(new TypeReference<List<Comment>>() {
                }).readValue(dataNode)
                : Collections.<Comment>emptyList();
        return new ListAndCount<Comment>(commentsList, commentsList.size());
    }

    return null;
}

From source file:cz.cvut.kbss.jsonld.jackson.deserialization.JacksonJsonLdDeserializer.java

private Object parseJsonObject(JsonParser parser) throws IOException {
    Object value = null;/*from w w w .  j  av a 2 s.c  o  m*/
    final JsonToken initialToken = parser.getCurrentToken();
    parser.setCodec(mapper);
    if (initialToken == JsonToken.START_ARRAY) {
        value = parser.readValueAs(new TypeReference<List<?>>() {
        });
    } else if (initialToken == JsonToken.START_OBJECT) {
        value = parser.readValueAs(new TypeReference<Map<?, ?>>() {
        });
    } else if (initialToken == JsonToken.VALUE_STRING) {
        value = parser.readValueAs(String.class);
    } else if (initialToken == JsonToken.VALUE_FALSE || initialToken == JsonToken.VALUE_TRUE) {
        value = parser.readValueAs(Boolean.class);
    } else if (initialToken == JsonToken.VALUE_NUMBER_FLOAT || initialToken == JsonToken.VALUE_NUMBER_INT) {
        value = parser.readValueAs(Number.class);
    } else if (initialToken == JsonToken.VALUE_NULL) {
        value = null;
    }
    return value;
}

From source file:org.agorava.facebook.jackson.TagListDeserializer.java

@SuppressWarnings("unchecked")
@Override//from  ww w  . j  a v  a 2s  .  co  m
public List<Tag> deserialize(JsonParser jp, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    ObjectMapper mapper = BeanResolver.getInstance().resolve(ObjectMapper.class);
    jp.setCodec(mapper);
    if (jp.hasCurrentToken()) {
        JsonNode dataNode = (JsonNode) jp.readValueAs(JsonNode.class).get("data");
        return (List<Tag>) mapper.reader(new TypeReference<List<Tag>>() {
        }).readValue(dataNode);
    }

    return null;
}

From source file:org.agorava.twitter.jackson.SimilarPlacesDeserializer.java

@Override
public SimilarPlacesResponse deserialize(JsonParser jp, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    ObjectMapper mapper = BeanResolver.getInstance().resolve(ObjectMapper.class);
    jp.setCodec(mapper);
    JsonNode node = jp.readValueAs(JsonNode.class);
    JsonNode resultNode = node.get("result");
    String token = resultNode.get("token").textValue();
    JsonNode placesNode = resultNode.get("places");
    @SuppressWarnings("unchecked")
    List<Place> places = (List<Place>) mapper.reader(new TypeReference<List<Place>>() {
    }).readValue(placesNode);/* w ww .j  av  a  2s  .c om*/
    return new SimilarPlacesResponse(places, token);
}

From source file:org.agorava.linkedin.jackson.RecommendationsListDeserializer.java

@Override
public List<Recommendation> deserialize(JsonParser jp, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    ObjectMapper mapper = BeanResolver.getInstance().resolve(ObjectMapper.class);
    jp.setCodec(mapper);
    if (jp.hasCurrentToken()) {
        JsonNode dataNode = jp.readValueAs(JsonNode.class).get("values");
        if (dataNode != null) {
            return mapper.reader(new TypeReference<List<Recommendation>>() {
            }).readValue(dataNode);/*from  w  ww. jav a2  s . co m*/
        }
    }
    return null;
}

From source file:org.agorava.facebook.jackson.ReferenceListAndCountDeserializer.java

@SuppressWarnings("unchecked")
@Override/* w w w.  j a  v  a  2  s  . c o  m*/
public ListAndCount<Reference> deserialize(JsonParser jp, DeserializationContext ctxt)
        throws IOException, JsonProcessingException {
    ObjectMapper mapper = getInstance().resolve(ObjectMapper.class);

    jp.setCodec(mapper);
    if (jp.hasCurrentToken()) {
        JsonNode node = jp.readValueAs(JsonNode.class);
        JsonNode dataNode = node.get("data");
        List<Reference> commentsList = dataNode != null
                ? (List<Reference>) mapper.reader(new TypeReference<List<Reference>>() {
                }).readValue(dataNode)
                : Collections.<Reference>emptyList();
        JsonNode countNode = node.get("count");
        int referenceCount = countNode != null ? countNode.intValue() : 0;
        return new ListAndCount<Reference>(commentsList, referenceCount);
    }

    return null;
}