tb.writeString(typeId); v = typeProp.getValueDeserializer().deserialize(tb.asParserOnFirstToken(), ctxt); tb.close();
private JsonParser enrichJsonObject(ObjectMapper mapper, String fieldName, JsonNode fieldJson) throws IOException { TokenBuffer tb = new TokenBuffer(null, false); JsonParser jp = fieldJson.traverse(mapper); JsonToken token = jp.nextToken(); // Get to Start TOKEN tb.writeStringField(NAME_PROP, fieldName); do { jp.nextToken(); token = jp.getCurrentToken(); tb.copyCurrentStructure(jp); } while(token != JsonToken.END_OBJECT); jp = tb.asParser(jp); jp.nextToken(); tb.close(); return jp; } }
FieldMetadata deserializeMetadata(ObjectMapper mapper, String fieldName, JsonNode fieldJson) throws JsonParseException, IOException { TokenBuffer tb = new TokenBuffer(null, false); JsonParser jp = fieldJson.traverse(mapper); jp.nextToken(); // Get to Start TOKEN JsonToken token = jp.getCurrentToken(); tb.writeStringField(NAME_PROP, fieldName); do { jp.nextToken(); token = jp.getCurrentToken(); tb.copyCurrentStructure(jp); } while(token != JsonToken.END_OBJECT); jp = tb.asParser(jp); jp.nextToken(); tb.close(); FieldMetadata diff = mapper.readValue(jp, FieldMetadata.class); return defaultMetaProvider.mergeWithDefault(diff); } }
buffer.close(); return object;
buffer.close(); return object;
tokens.close(); throw ctxt.mappingException("Can not create polymorphic instances with unwrapped values");
tokens.close(); throw ctxt.mappingException("Can not create polymorphic instances with unwrapped values");
tokens.close(); throw ctxt.mappingException("Can not create polymorphic instances with unwrapped values");
tokens.close(); ctxt.reportMappingException("Can not create polymorphic instances with unwrapped values"); return null;
tb.writeString(typeId); v = typeProp.getValueDeserializer().deserialize(tb.asParserOnFirstToken(), ctxt); tb.close();