List of usage examples for com.fasterxml.jackson.core JsonToken VALUE_NULL
JsonToken VALUE_NULL
To view the source code for com.fasterxml.jackson.core JsonToken VALUE_NULL.
Click Source Link
From source file:org.mongojack.internal.util.CalendarDeserializerTest.java
@Test public void testDateIsNull() throws IOException { when(jsonParser.getCurrentToken()).thenReturn(JsonToken.VALUE_NULL); deserializedDate = deserializer.deserialize(jsonParser, deserializationContext); assertNull(deserializedDate);//from ww w . j a v a 2s .c o m }
From source file:com.kaaprotech.satu.jackson.SatuDeserializers.java
@Override public JsonDeserializer<?> findMapDeserializer(final MapType type, final DeserializationConfig config, BeanDescription beanDesc, final KeyDeserializer keyDeserializer, final TypeDeserializer elementTypeDeserializer, final JsonDeserializer<?> elementDeserializer) throws JsonMappingException { if (ImmutableMap.class.isAssignableFrom(type.getRawClass())) { return new StdDeserializer<Object>(type) { private static final long serialVersionUID = 1L; @Override/*from w ww . j av a 2 s. c o m*/ public Object deserialize(JsonParser jp, DeserializationContext context) throws IOException { JsonToken t = jp.getCurrentToken(); if (t == JsonToken.START_OBJECT) { t = jp.nextToken(); } if (t != JsonToken.FIELD_NAME && t != JsonToken.END_OBJECT) { throw context.mappingException(type.getRawClass()); } MutableMap<Object, Object> m = Maps.mutable.of(); for (; jp.getCurrentToken() == JsonToken.FIELD_NAME; jp.nextToken()) { // Pointing to field name String fieldName = jp.getCurrentName(); Object key = (keyDeserializer == null) ? fieldName : keyDeserializer.deserializeKey(fieldName, context); t = jp.nextToken(); Object value; if (t == JsonToken.VALUE_NULL) { value = null; } else if (elementDeserializer == null) { value = jp.readValueAs(type.getContentType().getRawClass()); } else if (elementTypeDeserializer == null) { value = elementDeserializer.deserialize(jp, context); } else { value = elementDeserializer.deserializeWithType(jp, context, elementTypeDeserializer); } m.put(key, value); } return m.toImmutable(); } }; } return super.findMapDeserializer(type, config, beanDesc, keyDeserializer, elementTypeDeserializer, elementDeserializer); }
From source file:net.nullschool.grains.jackson.datatype.AbstractBasicConstCollectionDeserializer.java
@Override public T deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { JsonToken token = jp.getCurrentToken(); if (token != JsonToken.START_ARRAY) { throw ctxt.mappingException(collectionType.getRawClass()); }/*from w ww .ja va 2 s .c o m*/ if ((token = jp.nextToken()) == JsonToken.END_ARRAY) { return emptyResult(); } JsonDeserializer<?> ed = elementDeserializer; TypeDeserializer etd = elementTypeDeserializer; List<Object> elements = null; Object element; do { element = token != JsonToken.VALUE_NULL ? etd == null ? ed.deserialize(jp, ctxt) : ed.deserializeWithType(jp, ctxt, etd) : null; token = jp.nextToken(); if (elements == null) { if (token == JsonToken.END_ARRAY) { return resultOf(element); } elements = new ArrayList<>(); } elements.add(element); } while (token != JsonToken.END_ARRAY); return asResult(elements); }
From source file:net.nullschool.grains.jackson.datatype.GrainDeserializer.java
@Override public Grain deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { JsonToken token = jp.getCurrentToken(); if (token == JsonToken.START_OBJECT) { token = jp.nextToken();/* w ww . j a va2s . c om*/ } else if (token != JsonToken.FIELD_NAME) { throw ctxt.mappingException(getValueClass()); } if (token == JsonToken.END_OBJECT) { return factory.getDefaultValue(); } GrainBuilder builder = factory.getNewBuilder(); do { String key = jp.getCurrentName(); PropertyReader reader = readers.get(key); token = jp.nextToken(); Object value; if (token == JsonToken.VALUE_NULL) { value = null; } else if (reader != null) { value = reader.deserializer.deserialize(jp, ctxt); } else { switch (token) { case START_ARRAY: value = extArrayDeserializer.deserialize(jp, ctxt); break; case START_OBJECT: value = extObjectDeserializer.deserialize(jp, ctxt); break; default: value = extValueDeserializer.deserialize(jp, ctxt); } } builder.put(key, value); } while (jp.nextToken() == JsonToken.FIELD_NAME); return builder.build(); }
From source file:net.nullschool.grains.jackson.datatype.AbstractBasicConstMapDeserializer.java
@Override public T deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { JsonToken token = jp.getCurrentToken(); if (token == JsonToken.START_OBJECT) { token = jp.nextToken();/*from w ww. ja v a 2s. c om*/ } else if (token != JsonToken.FIELD_NAME) { throw ctxt.mappingException(mapType.getRawClass()); } if (token == JsonToken.END_OBJECT) { return emptyResult(); } KeyDeserializer kd = keyDeserializer; JsonDeserializer<?> vd = valueDeserializer; TypeDeserializer vtd = valueTypeDeserializer; List<Object> keys = null; List<Object> values = null; Object key; Object value; do { String name = jp.getCurrentName(); key = kd == null ? name : kd.deserializeKey(name, ctxt); value = jp.nextToken() != JsonToken.VALUE_NULL ? vtd == null ? vd.deserialize(jp, ctxt) : vd.deserializeWithType(jp, ctxt, vtd) : null; token = jp.nextToken(); if (keys == null) { if (token == JsonToken.END_OBJECT) { return resultOf(key, value); } keys = new ArrayList<>(); values = new ArrayList<>(); } keys.add(key); values.add(value); } while (token != JsonToken.END_OBJECT); return asResult(keys, values); }
From source file:cz.cvut.kbss.jsonld.jackson.deserialization.JacksonJsonLdDeserializer.java
private Object parseJsonObject(JsonParser parser) throws IOException { Object value = null;/*from w ww.jav a2 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.mongojack.internal.object.BsonObjectCursor.java
private static JsonToken getToken(Object o) { if (o == null) { return JsonToken.VALUE_NULL; } else if (o instanceof Iterable) { return JsonToken.START_ARRAY; } else if (o instanceof BSONObject) { return JsonToken.START_OBJECT; } else if (o instanceof Number) { if (o instanceof Double || o instanceof Float || o instanceof BigDecimal) { return JsonToken.VALUE_NUMBER_FLOAT; } else {/*from w w w.j a v a 2 s . c om*/ return JsonToken.VALUE_NUMBER_INT; } } else if (o instanceof Boolean) { if ((Boolean) o) { return JsonToken.VALUE_TRUE; } else { return JsonToken.VALUE_FALSE; } } else if (o instanceof CharSequence) { return JsonToken.VALUE_STRING; } else if (o instanceof ObjectId) { return JsonToken.VALUE_EMBEDDED_OBJECT; } else if (o instanceof DBRef) { return JsonToken.VALUE_EMBEDDED_OBJECT; } else if (o instanceof Date) { return JsonToken.VALUE_EMBEDDED_OBJECT; } else if (o instanceof byte[]) { return JsonToken.VALUE_EMBEDDED_OBJECT; } else { throw new IllegalStateException("Don't know how to parse type: " + o.getClass()); } }
From source file:com.google.openrtb.json.OpenRtbNativeJsonReader.java
/** * Desserializes a {@link NativeRequest} from JSON, with a provided {@link JsonParser} * which allows several choices of input and encoding. *///from w ww .j av a 2s . co m public final NativeRequest.Builder readNativeRequest(JsonParser par) throws IOException { if (emptyToNull(par)) { return null; } NativeRequest.Builder req = NativeRequest.newBuilder(); boolean rootNativeField = false; boolean firstField = true; for (startObject(par); endObject(par); par.nextToken()) { String fieldName = getCurrentName(par); if (par.nextToken() != JsonToken.VALUE_NULL) { if (firstField) { firstField = false; if ((rootNativeField = "native".equals(fieldName)) == true) { startObject(par); fieldName = getCurrentName(par); par.nextToken(); } } if (par.getCurrentToken() != JsonToken.VALUE_NULL) { readNativeRequestField(par, req, fieldName); } } } if (rootNativeField && !endObject(par)) { par.nextToken(); } return req; }
From source file:com.sdl.odata.unmarshaller.json.core.JsonProcessor.java
/** * Process all things that do not contain special ODataTags. * * @param jsonParser the parser/*from w w w. ja v a 2s . co m*/ * @throws ODataUnmarshallingException If unable to unmarshall * @throws IOException If unable to read input parser */ private void process(JsonParser jsonParser) throws IOException, ODataUnmarshallingException { if (jsonParser.getCurrentToken() == JsonToken.FIELD_NAME) { LOG.info("Starting to parse {} token", jsonParser.getCurrentName()); String key = jsonParser.getCurrentName(); jsonParser.nextToken(); JsonToken token = jsonParser.getCurrentToken(); if (token == JsonToken.START_ARRAY) { if (JsonConstants.VALUE.equals(key)) { throw new ODataUnmarshallingException("Feed is not supported"); } values.put(key, getCollectionValue(jsonParser)); } else if (token == JsonToken.START_OBJECT) { values.put(key, getEmbeddedObject(jsonParser)); } else { if (token.equals(JsonToken.VALUE_NULL)) { values.put(key, null); } else { values.put(key, jsonParser.getText()); } } } }
From source file:com.kaaprotech.satu.jackson.SatuDeserializers.java
@Override public JsonDeserializer<?> findCollectionDeserializer(final CollectionType type, final DeserializationConfig config, final BeanDescription beanDesc, final TypeDeserializer elementTypeDeserializer, final JsonDeserializer<?> elementDeserializer) throws JsonMappingException { if (ImmutableSet.class.isAssignableFrom(type.getRawClass())) { return new StdDeserializer<Object>(type) { private static final long serialVersionUID = 1L; @Override/*from w w w . jav a2 s. c o m*/ public Object deserialize(JsonParser jp, DeserializationContext context) throws IOException { if (jp.isExpectedStartArrayToken()) { JsonToken t; MutableSet<Object> s = Sets.mutable.of(); while ((t = jp.nextToken()) != JsonToken.END_ARRAY) { Object value; if (t == JsonToken.VALUE_NULL) { value = null; } else if (elementDeserializer == null) { value = jp.readValueAs(type.getContentType().getRawClass()); } else if (elementTypeDeserializer == null) { value = elementDeserializer.deserialize(jp, context); } else { value = elementDeserializer.deserializeWithType(jp, context, elementTypeDeserializer); } s.add(value); } return s.toImmutable(); } throw context.mappingException(type.getRawClass()); } }; } return super.findCollectionDeserializer(type, config, beanDesc, elementTypeDeserializer, elementDeserializer); }