in extensions/jsonp/src/main/java/org/apache/batchee/jsonp/JsonPartialReader.java [59:114]
private void parseObject(final JsonObjectBuilder builder) {
String key = null;
while (parser.hasNext()) {
final JsonParser.Event next = parser.next();
switch (next) {
case KEY_NAME:
key = parser.getString();
break;
case VALUE_STRING:
builder.add(key, parser.getString());
break;
case START_OBJECT:
final JsonObjectBuilder subObject = provider.createObjectBuilder();
parseObject(subObject);
builder.add(key, subObject);
break;
case START_ARRAY:
final JsonArrayBuilder subArray = provider.createArrayBuilder();
parseArray(subArray);
builder.add(key, subArray);
break;
case VALUE_NUMBER:
if (parser.isIntegralNumber()) {
builder.add(key, parser.getLong());
} else {
builder.add(key, parser.getBigDecimal());
}
break;
case VALUE_NULL:
builder.addNull(key);
break;
case VALUE_TRUE:
builder.add(key, true);
break;
case VALUE_FALSE:
builder.add(key, false);
break;
case END_OBJECT:
return;
case END_ARRAY:
throw new JsonParsingException("']', shouldn't occur", parser.getLocation());
default:
throw new JsonParsingException(next.name() + ", shouldn't occur", parser.getLocation());
}
}
}