/** * Turns this POJO instance into a JSON form of string. * * @param stripSpaces * Should the string (field) strip all spaces or not. * @return The {@link String} which has the JSON representation of the POJO instance. */ public String toJsonForm(boolean stripSpaces) { StringBuilder sb = new StringBuilder(); sb.append("{\"integer\":"); sb.append(integer); sb.append(",\"object\":[\""); sb.append(getObject().getClass().getName()); sb.append("\",{\"uuid\":\""); sb.append(getObject().toString()); sb.append("\"}],\"string\":\""); String string = getString().replace("\\", "\\\\").replace("\"", "\\\""); sb.append(stripSpaces ? string.replaceAll("\\s", "") : string); sb.append("\",\"guid\":[\""); sb.append(getGuid().getClass().getName()); sb.append("\",{\"uuid\":\""); sb.append(getGuid().toString()); sb.append("\"}]}"); return sb.toString(); }
@Test public void testSerialize() { JsonSerializablePojo serializablePojo = new JsonSerializablePojo(); assertEquals(serializablePojo.toJsonForm(true), new JsonObjectSerializer().serialize(serializablePojo).replaceAll("\\s", "")); }
@Test public void testSerialize() { JsonSerializablePojo serializablePojo = new JsonSerializablePojo(); assertEquals(serializablePojo, new JsonObjectDeserializer().deserialize( serializablePojo.toJsonForm(false), JsonSerializablePojo.class)); }