public JsonVTypeBuilder addListString(String string, List<String> ls) { add(string, fromListString(ls)); return this; }
public JsonVTypeBuilder addListColumnValues(String string, VTable vTable) { JsonArrayBuilder b = Json.createArrayBuilder(); for (int column = 0; column < vTable.getColumnCount(); column++) { Class<?> type = vTable.getColumnType(column); if (type.equals(String.class)) { @SuppressWarnings("unchecked") List<String> listString = (List<String>) vTable.getColumnData(column); b.add(fromListString(listString)); } else if (type.equals(double.class) || type.equals(float.class) || type.equals(long.class) || type.equals(int.class) || type.equals(short.class) || type.equals(byte.class)) { b.add(fromListNumber((ListNumber) vTable.getColumnData(column))); } else if (type.equals(Instant.class)) { @SuppressWarnings("unchecked") List<Instant> listTimestamp = (List<Instant>) vTable.getColumnData(column); b.add(fromListTimestamp(listTimestamp)); } else { throw new IllegalArgumentException("Column type " + type.getSimpleName() + " not supported"); } } add(string, b); return this; }
/** * Converts the given value to a JSON representation. * * @param gen the object to create/store the JSON representation * @param name the JSON name to store the value as * @param value the value to store */ public static void writeValueToJson(JsonGenerator gen, String name, Object value) { if (value instanceof Number) { gen.write(name, ((Number) value).doubleValue()); } else if (value instanceof String) { gen.write(name, (String) value); } else if (value instanceof List) { @SuppressWarnings("unchecked") List<String> strings = (List<String>) value; gen.write(name, fromListString(strings).build()); } else if (value instanceof ListNumber) { gen.write(name, fromListNumber((ListNumber) value).build()); } else if (value instanceof VType) { gen.write(name, VTypeToJson.toJson((VType) value)); } else { throw new UnsupportedOperationException("Value " + value.getClass().getSimpleName() + " is not supported"); } }