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:io.pdef.json.JsonJacksonFormat.java
private Object read(final JsonParser parser) throws IOException { JsonToken current = parser.getCurrentToken(); if (current == null || current == JsonToken.VALUE_NULL) { return null; }/* w w w .j a va2 s .co m*/ switch (current) { case VALUE_NULL: return null; case VALUE_TRUE: return true; case VALUE_FALSE: return false; case VALUE_STRING: return parser.getValueAsString(); case VALUE_NUMBER_INT: case VALUE_NUMBER_FLOAT: return parser.getNumberValue(); case START_ARRAY: return readArray(parser); case START_OBJECT: return readMap(parser); default: throw new JsonFormatException("Bad JSON string"); } }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
public final Regs.Builder readRegs(JsonParser par) throws IOException { Regs.Builder reg = Regs.newBuilder(); for (startObject(par); endObject(par); par.nextToken()) { String fieldName = getCurrentName(par); if (par.nextToken() != JsonToken.VALUE_NULL) { readRegsField(par, reg, fieldName); }//from w ww . j a va2 s . c o m } return reg; }
From source file:com.google.openrtb.json.OpenRtbNativeJsonReader.java
public final NativeRequest.Asset.Data.Builder readReqData(JsonParser par) throws IOException { NativeRequest.Asset.Data.Builder data = NativeRequest.Asset.Data.newBuilder(); for (startObject(par); endObject(par); par.nextToken()) { String fieldName = getCurrentName(par); if (par.nextToken() != JsonToken.VALUE_NULL) { readReqDataField(par, data, fieldName); }/*from w w w . j a va 2 s . com*/ } return data; }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
public final Imp.Builder readImp(JsonParser par) throws IOException { Imp.Builder imp = Imp.newBuilder();//from ww w . j ava2s .c o m for (startObject(par); endObject(par); par.nextToken()) { String fieldName = getCurrentName(par); if (par.nextToken() != JsonToken.VALUE_NULL) { readImpField(par, imp, fieldName); } } return imp; }
From source file:com.netflix.hollow.jsonadapter.HollowJsonAdapter.java
private void addObjectField(JsonParser parser, JsonToken token, ObjectMappedFieldPath mappedFieldPath) throws IOException { if (mappedFieldPath == null) { skipObjectField(parser, token);//from w ww . j a v a 2s . c o m } else { HollowObjectWriteRecord writeRec = mappedFieldPath.getWriteRecord(); HollowObjectSchema schema = writeRec.getSchema(); String fieldName = mappedFieldPath.getFieldName(); int fieldPosition = mappedFieldPath.getFieldPosition(); FieldProcessor processor = mappedFieldPath.getFieldProcessor(); if (processor != null && token != JsonToken.VALUE_NULL) { processor.processField(parser, stateEngine, writeRec); return; } switch (token) { case START_ARRAY: case START_OBJECT: int refOrdinal = parseSubType(parser, token, schema.getReferencedType(fieldPosition)); writeRec.setReference(fieldName, refOrdinal); break; case VALUE_FALSE: case VALUE_TRUE: case VALUE_NUMBER_INT: case VALUE_NUMBER_FLOAT: case VALUE_STRING: switch (schema.getFieldType(fieldPosition)) { case BOOLEAN: writeRec.setBoolean(fieldName, parser.getBooleanValue()); break; case INT: writeRec.setInt(fieldName, parser.getIntValue()); break; case LONG: writeRec.setLong(fieldName, parser.getLongValue()); break; case DOUBLE: writeRec.setDouble(fieldName, parser.getDoubleValue()); break; case FLOAT: writeRec.setFloat(fieldName, parser.getFloatValue()); break; case STRING: writeRec.setString(fieldName, parser.getValueAsString()); break; case REFERENCE: HollowObjectWriteRecord referencedRec = (HollowObjectWriteRecord) getWriteRecord( schema.getReferencedType(fieldPosition)); referencedRec.reset(); String refFieldName = referencedRec.getSchema().getFieldName(0); switch (referencedRec.getSchema().getFieldType(0)) { case BOOLEAN: referencedRec.setBoolean(refFieldName, parser.getBooleanValue()); break; case INT: referencedRec.setInt(refFieldName, parser.getIntValue()); break; case LONG: referencedRec.setLong(refFieldName, parser.getLongValue()); break; case DOUBLE: referencedRec.setDouble(refFieldName, parser.getDoubleValue()); break; case FLOAT: referencedRec.setFloat(refFieldName, parser.getFloatValue()); break; case STRING: referencedRec.setString(refFieldName, parser.getValueAsString()); break; default: } int referencedOrdinal = stateEngine.add(schema.getReferencedType(fieldPosition), referencedRec); writeRec.setReference(fieldName, referencedOrdinal); break; default: } case VALUE_NULL: break; default: } } }
From source file:de.undercouch.bson4jackson.BsonParser.java
@Override public JsonToken nextToken() throws IOException, JsonParseException { Context ctx = _currentContext; if (_currToken == null && ctx == null) { try {/*from www . ja v a 2 s . c o m*/ _currToken = handleNewDocument(false); } catch (EOFException e) { //there is nothing more to read. indicate EOF return null; } } else { _tokenPos = _counter.getPosition(); if (ctx == null) { if (_currToken == JsonToken.END_OBJECT) { //end of input return null; } throw new JsonParseException("Found element outside the document", getTokenLocation()); } if (ctx.state == State.DONE) { //next field ctx.reset(); } boolean readValue = true; if (ctx.state == State.FIELDNAME) { readValue = false; while (true) { //read field name or end of document ctx.type = _in.readByte(); if (ctx.type == BsonConstants.TYPE_END) { //end of document _currToken = (ctx.array ? JsonToken.END_ARRAY : JsonToken.END_OBJECT); _currentContext = _currentContext.parent; } else if (ctx.type == BsonConstants.TYPE_UNDEFINED) { //skip field name and then ignore this token skipCString(); continue; } else { ctx.state = State.VALUE; _currToken = JsonToken.FIELD_NAME; if (ctx.array) { //immediately read value of array element (discard field name) readValue = true; skipCString(); ctx.fieldName = null; } else { //read field name ctx.fieldName = readCString(); } } break; } } if (readValue) { //parse element's value switch (ctx.type) { case BsonConstants.TYPE_DOUBLE: ctx.value = _in.readDouble(); _currToken = JsonToken.VALUE_NUMBER_FLOAT; break; case BsonConstants.TYPE_STRING: ctx.value = readString(); _currToken = JsonToken.VALUE_STRING; break; case BsonConstants.TYPE_DOCUMENT: _currToken = handleNewDocument(false); break; case BsonConstants.TYPE_ARRAY: _currToken = handleNewDocument(true); break; case BsonConstants.TYPE_BINARY: _currToken = handleBinary(); break; case BsonConstants.TYPE_OBJECTID: ctx.value = readObjectId(); _currToken = JsonToken.VALUE_EMBEDDED_OBJECT; break; case BsonConstants.TYPE_BOOLEAN: boolean b = _in.readBoolean(); ctx.value = b; _currToken = (b ? JsonToken.VALUE_TRUE : JsonToken.VALUE_FALSE); break; case BsonConstants.TYPE_DATETIME: ctx.value = new Date(_in.readLong()); _currToken = JsonToken.VALUE_EMBEDDED_OBJECT; break; case BsonConstants.TYPE_NULL: _currToken = JsonToken.VALUE_NULL; break; case BsonConstants.TYPE_REGEX: _currToken = handleRegEx(); break; case BsonConstants.TYPE_DBPOINTER: _currToken = handleDBPointer(); break; case BsonConstants.TYPE_JAVASCRIPT: ctx.value = new JavaScript(readString()); _currToken = JsonToken.VALUE_EMBEDDED_OBJECT; break; case BsonConstants.TYPE_SYMBOL: ctx.value = readSymbol(); _currToken = JsonToken.VALUE_EMBEDDED_OBJECT; break; case BsonConstants.TYPE_JAVASCRIPT_WITH_SCOPE: _currToken = handleJavascriptWithScope(); break; case BsonConstants.TYPE_INT32: ctx.value = _in.readInt(); _currToken = JsonToken.VALUE_NUMBER_INT; break; case BsonConstants.TYPE_TIMESTAMP: ctx.value = readTimestamp(); _currToken = JsonToken.VALUE_EMBEDDED_OBJECT; break; case BsonConstants.TYPE_INT64: ctx.value = _in.readLong(); _currToken = JsonToken.VALUE_NUMBER_INT; break; case BsonConstants.TYPE_MINKEY: ctx.value = "MinKey"; _currToken = JsonToken.VALUE_STRING; break; case BsonConstants.TYPE_MAXKEY: ctx.value = "MaxKey"; _currToken = JsonToken.VALUE_STRING; break; default: throw new JsonParseException("Unknown element type " + ctx.type, getTokenLocation()); } ctx.state = State.DONE; } } return _currToken; }
From source file:com.google.openrtb.json.OpenRtbJsonReader.java
public final Native.Builder readNative(JsonParser par) throws IOException { Native.Builder nativ = Native.newBuilder(); for (startObject(par); endObject(par); par.nextToken()) { String fieldName = getCurrentName(par); if (par.nextToken() != JsonToken.VALUE_NULL) { readNativeField(par, nativ, fieldName); }/* www. jav a 2s .c o m*/ } return nativ; }
From source file:com.google.openrtb.json.OpenRtbNativeJsonReader.java
/** * Desserializes a {@link NativeResponse} from JSON, with a provided {@link JsonParser} * which allows several choices of input and encoding. *//*from ww w . j a v a 2 s. c om*/ public final NativeResponse.Builder readNativeResponse(JsonParser par) throws IOException { if (emptyToNull(par)) { return null; } NativeResponse.Builder resp = NativeResponse.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) { readNativeResponseField(par, resp, fieldName); } } } if (rootNativeField && !endObject(par)) { par.nextToken(); } return resp; }
From source file:com.cinnober.msgcodec.json.JsonCodec.java
@Override public Object decode(InputStream in) throws IOException { JsonFactory f = new JsonFactory(); JsonParser p = f.createParser(in);// w w w.j ava 2s . c o m JsonToken token = p.nextToken(); if (token == JsonToken.VALUE_NULL) { return null; } else if (token != JsonToken.START_OBJECT) { throw new DecodeException("Expected {"); } return dynamicGroupHandler.readValue(p); }
From source file:com.cedarsoft.serialization.jackson.AbstractJacksonSerializer.java
@Nullable protected <T> T deserializeNullable(@Nonnull Class<T> type, @Nonnull String propertyName, @Nonnull Version formatVersion, @Nonnull JsonParser deserializeFrom) throws IOException, JsonProcessingException { JacksonParserWrapper parserWrapper = new JacksonParserWrapper(deserializeFrom); parserWrapper.nextFieldValue(propertyName); if (parserWrapper.getCurrentToken() == JsonToken.VALUE_NULL) { return null; }//from w ww . j a va2s. c o m return deserialize(type, formatVersion, deserializeFrom); }