void parseExtra(DefaultJSONParser parser, Object object, String key) { JSONLexer lexer = parser.getLexer(); if (lexer.isEnabled(Feature.IgnoreNotMatch)) { Object value; lexer.nextTokenWithColon(); Type type = FilterUtils.getExtratype(parser, object, key); if (type == null) { value = parser.parse(); } else { value = parser.parseObject(type); } FilterUtils.processExtra(parser, object, key, value); return; } throw new JSONException("setter not found, class " + this.clazz.getName() + ", property " + key); }
void parseExtra(DefaultJSONParser parser, Object object, String key) { final JSONLexer lexer = parser.getLexer(); // xxx if (!lexer.isEnabled(Feature.IgnoreNotMatch)) { throw new JSONException("setter not found, class " + clazz.getName() + ", property " + key); } lexer.nextTokenWithColon(); Type type = FilterUtils.getExtratype(parser, object, key); Object value; if (type == null) { value = parser.parse(); // skip } else { value = parser.parseObject(type); } FilterUtils.processExtra(parser, object, key, value); }