/** * Transform from json to object. * * @param jsonValue json value * @return object most correct for the type, or string value if not understood (e.g. json object) */ public static Object toObject(JsonValue jsonValue) { switch (jsonValue.getValueType()) { case ARRAY: return jsonValue.toString(); case OBJECT: return jsonValue.toString(); case STRING: return ((JsonString) jsonValue).getString(); case NUMBER: return ((JsonNumber) jsonValue).numberValue(); case TRUE: return true; case FALSE: return false; case NULL: return null; default: return jsonValue.toString(); } }
private Object mapJson(final RecordBuilderFactory factory, final JsonValue it) { if (JsonObject.class.isInstance(it)) { return json2Record(factory, JsonObject.class.cast(it)); } if (JsonArray.class.isInstance(it)) { return JsonArray.class.cast(it).stream().map(i -> mapJson(factory, i)).collect(toList()); } if (JsonString.class.isInstance(it)) { return JsonString.class.cast(it).getString(); } if (JsonNumber.class.isInstance(it)) { return JsonNumber.class.cast(it).numberValue(); } if (JsonValue.FALSE.equals(it)) { return false; } if (JsonValue.TRUE.equals(it)) { return true; } if (JsonValue.NULL.equals(it)) { return null; } return it; }
private static String toJavaObject(JsonValue jsonValue) { String value = null; switch (jsonValue.getValueType()) { case FALSE: value = Boolean.FALSE.toString(); break; case NULL: value = null; break; case NUMBER: JsonNumber jsonNumber = (JsonNumber) jsonValue; value = jsonNumber.numberValue().toString(); break; case OBJECT: // not supported in this version break; case STRING: JsonString jsonString = (JsonString) jsonValue; value = jsonString.getString(); break; case TRUE: value = Boolean.TRUE.toString(); break; default: break; } return value; }
/** * Transform from json to object. * * @param jsonValue json value * @return object most correct for the type, or string value if not understood (e.g. json object) */ public static Object toObject(JsonValue jsonValue) { switch (jsonValue.getValueType()) { case ARRAY: return jsonValue.toString(); case OBJECT: return jsonValue.toString(); case STRING: return ((JsonString) jsonValue).getString(); case NUMBER: return ((JsonNumber) jsonValue).numberValue(); case TRUE: return true; case FALSE: return false; case NULL: return null; default: return jsonValue.toString(); } }
value = jsonNumber.numberValue(); break;
value = jsonNumber.numberValue(); break;