JsonUtil { public static void addToObject(final String key, final Object param, final JsonObjectBuilder jsonObjectBuilder) { if (param instanceof Integer) { jsonObjectBuilder.add(key, (Integer) param); } else if (param instanceof Long) { jsonObjectBuilder.add(key, (Long) param); } else if (param instanceof Double) { jsonObjectBuilder.add(key, (Double) param); } else if (param instanceof String) { jsonObjectBuilder.add(key, (String) param); } else if (param instanceof Boolean) { jsonObjectBuilder.add(key, (Boolean) param); } else if (param instanceof Map) { JsonObject mapObject = toJsonObject((Map<String, Object>) param); jsonObjectBuilder.add(key, mapObject); } else if (param instanceof Short) { jsonObjectBuilder.add(key, (Short) param); } else if (param instanceof Byte) { jsonObjectBuilder.add(key, ((Byte) param).shortValue()); } else if (param instanceof SimpleString) { jsonObjectBuilder.add(key, param.toString()); } else if (param == null) { jsonObjectBuilder.addNull(key); } else if (param instanceof byte[]) { JsonArrayBuilder byteArrayObject = toJsonArrayBuilder((byte[]) param); jsonObjectBuilder.add(key, byteArrayObject); } else { throw ActiveMQClientMessageBundle.BUNDLE.invalidManagementParam(param.getClass().getName()); } } private  JsonUtil(); static JsonArray toJSONArray(final Object[] array); static Object[] fromJsonArray(final JsonArray jsonArray); static JsonValue nullSafe(String input); static void addToObject(final String key, final Object param, final JsonObjectBuilder jsonObjectBuilder); static void addToArray(final Object param, final JsonArrayBuilder jsonArrayBuilder); static JsonArray toJsonArray(List<String> strings); static JsonObject toJsonObject(Map<String, ?> map); static JsonArrayBuilder toJsonArrayBuilder(byte[] byteArray); static JsonArray readJsonArray(String jsonString); static JsonObject readJsonObject(String jsonString); static Map<String, String> readJsonProperties(String jsonString); static Object convertJsonValue(Object jsonValue, Class desiredType);  }
@Test public void testAddToObject() { JsonObjectBuilder jsonObjectBuilder = JsonLoader.createObjectBuilder(); JsonUtil.addToObject("not-null", "not-null", jsonObjectBuilder); JsonUtil.addToObject("null", null, jsonObjectBuilder); JsonObject jsonObject = jsonObjectBuilder.build(); Assert.assertTrue(jsonObject.containsKey("not-null")); Assert.assertTrue(jsonObject.containsKey("null")); Assert.assertEquals(2, jsonObject.size()); }
@Test public void testAddByteArrayToJsonObject() { JsonObjectBuilder jsonObjectBuilder = JsonLoader.createObjectBuilder(); byte[] bytes = {0x0a, 0x1b, 0x2c, 0x3d, 0x4e, 0x5f}; JsonUtil.addToObject("not-null", "not-null", jsonObjectBuilder); JsonUtil.addToObject("byteArray", bytes, jsonObjectBuilder); JsonUtil.addToObject("null", null, jsonObjectBuilder); JsonObject jsonObject = jsonObjectBuilder.build(); Assert.assertTrue(jsonObject.containsKey("byteArray")); Assert.assertEquals(6, jsonObject.getJsonArray("byteArray").size()); }