/** * Retruns the JsonObject at position {@code pos} in the array. */ public JsonObject getJsonObject(final int pos) { Object val = list.get(pos); if (val instanceof Map) { val = new JsonObject((Map) val); } return (JsonObject) val; }
@Override public Object next() { Object val = listIter.next(); if (val instanceof Map) { val = new JsonObject((Map) val); } else if (val instanceof List) { val = new JsonArray((List) val); } return val; }
/** * Parses input JSON to {@link JsonObject}, special case of {@link #parse(String, Class)}. */ public JsonObject parseAsJsonObject(final String input) { return new JsonObject(parse(input)); }
@Override public Map.Entry<String, Object> next() { Map.Entry<String, Object> entry = mapIterator.next(); if (entry.getValue() instanceof Map) { return MapEntry.createUnmodifiable(entry.getKey(), new JsonObject((Map) entry.getValue())); } if (entry.getValue() instanceof List) { return MapEntry.createUnmodifiable(entry.getKey(), new JsonArray((List) entry.getValue())); } return entry; }
/** * Prepares the JSON payload that carries on the token value. */ protected JsonResult tokenAsJson(final T authToken) { final JsonObject jsonObject = new JsonObject(); jsonObject.put("token", userAuth.tokenValue(authToken)); return JsonResult.of(jsonObject); }
private void assertNumberNotEquals(Number value1, Number value2) { JsonObject o1 = new JsonObject().put("key", value1); JsonObject o2 = new JsonObject().put("key", value2); if (o1.equals(o2)) { fail("Was expecting " + value1.getClass().getSimpleName() + ":" + value1 + " != " + value2.getClass().getSimpleName() + ":" + value2); } }
@Test void testCreateFromMapNestedJsonObject() { Map<String, Object> map = new HashMap<>(); JsonObject nestedObj = new JsonObject().put("foo", "bar"); map.put("nested", nestedObj); JsonObject obj = new JsonObject(map); JsonObject nestedRetrieved = obj.getJsonObject("nested"); assertEquals("bar", nestedRetrieved.getString("foo")); }
@Test void testCreateFromMapNestedMap() { Map<String, Object> map = new HashMap<>(); Map<String, Object> nestedMap = new HashMap<>(); nestedMap.put("foo", "bar"); map.put("nested", nestedMap); JsonObject obj = new JsonObject(map); JsonObject nestedRetrieved = obj.getJsonObject("nested"); assertEquals("bar", nestedRetrieved.getString("foo")); }
@Test void testCreateFromMapNestedList() { Map<String, Object> map = new HashMap<>(); List<String> nestedArr = Arrays.asList("foo"); map.put("nested", nestedArr); JsonObject obj = new JsonObject(map); JsonArray nestedRetrieved = obj.getJsonArray("nested"); assertEquals("foo", nestedRetrieved.getString(0)); }
@Test void testCreateFromMap() { Map<String, Object> map = new HashMap<>(); map.put("foo", "bar"); map.put("quux", 123); JsonObject obj = new JsonObject(map); assertEquals("bar", obj.getString("foo")); assertEquals(Integer.valueOf(123), obj.getInteger("quux")); assertSame(map, obj.map()); }
@Test void testCreateFromMapCharSequence() { Map<String, Object> map = new HashMap<>(); map.put("foo", "bar"); map.put("quux", 123); map.put("eeek", new StringBuilder("blah")); JsonObject obj = new JsonObject(map); assertEquals("bar", obj.getString("foo")); assertEquals(Integer.valueOf(123), obj.getInteger("quux")); assertEquals("blah", obj.getString("eeek")); assertSame(map, obj.map()); }
@Test void testCreateFromMapNestedJsonArray() { Map<String, Object> map = new HashMap<>(); JsonArray nestedArr = new JsonArray().add("foo"); map.put("nested", nestedArr); JsonObject obj = new JsonObject(map); JsonArray nestedRetrieved = obj.getJsonArray("nested"); assertEquals("foo", nestedRetrieved.getString(0)); }
@Test void testMergeIn1() { JsonObject jsonObject = new JsonObject(); JsonObject obj1 = new JsonObject().put("foo", "bar"); JsonObject obj2 = new JsonObject().put("eek", "flurb"); obj1.mergeIn(obj2); assertEquals(2, obj1.size()); assertEquals("bar", obj1.getString("foo")); assertEquals("flurb", obj1.getString("eek")); assertEquals(1, obj2.size()); assertEquals("flurb", obj2.getString("eek")); }
@Test void testGetList() { JsonObject obj = new JsonObject().put("quux", "wibble"); jsonArray.add("foo").add(123).add(obj); List<Object> list = jsonArray.list(); list.remove("foo"); assertFalse(jsonArray.contains("foo")); list.add("floob"); assertTrue(jsonArray.contains("floob")); assertSame(obj, list.get(1)); obj.remove("quux"); }
@Test void testAddJsonObject() { JsonObject obj = new JsonObject().put("foo", "bar"); assertSame(jsonArray, jsonArray.add(obj)); assertEquals(obj, jsonArray.getJsonObject(0)); }
@Test void testMergeIn2() { JsonObject obj1 = new JsonObject().put("foo", "bar"); JsonObject obj2 = new JsonObject().put("foo", "flurb"); obj1.mergeIn(obj2); assertEquals(1, obj1.size()); assertEquals("flurb", obj1.getString("foo")); assertEquals(1, obj2.size()); assertEquals("flurb", obj2.getString("foo")); }
private JsonObject createJsonObject() { JsonObject obj = new JsonObject(); obj.put("mystr", "bar"); obj.put("myint", Integer.MAX_VALUE); obj.put("mylong", Long.MAX_VALUE); obj.put("myfloat", Float.MAX_VALUE); obj.put("mydouble", Double.MAX_VALUE); obj.put("myboolean", true); obj.put("mybinary", randomByteArray(100)); return obj; }
@Test void testContainsKey() { JsonObject jsonObject = new JsonObject(); jsonObject.put("foo", "bar"); assertTrue(jsonObject.containsKey("foo")); jsonObject.putNull("foo"); assertTrue(jsonObject.containsKey("foo")); assertFalse(jsonObject.containsKey("absent")); }
@Test void testIsEmpty() { JsonObject jsonObject = new JsonObject(); assertTrue(jsonObject.isEmpty()); jsonObject.put("foo", "bar"); jsonObject.put("quux", 123); assertFalse(jsonObject.isEmpty()); jsonObject.clear(); assertTrue(jsonObject.isEmpty()); }
@Test void testRemove() { JsonObject jsonObject = new JsonObject(); jsonObject.put("mystr", "bar"); jsonObject.put("myint", 123); assertEquals("bar", jsonObject.remove("mystr")); assertNull(jsonObject.getValue("mystr")); assertEquals(123, jsonObject.remove("myint")); assertNull(jsonObject.getValue("myint")); assertTrue(jsonObject.isEmpty()); }