newline(bw, indent+1, pretty);
Iterator<Entry<String, JsonElement>> iterator = json.asObject().entrySet().iterator();
while (iterator.hasNext()) {
Entry<String, JsonElement> entry = iterator.next();
String key = entry.getKey();
JsonElement value = entry.getValue();
if(value != null) {
bw.write('"');
bw.write(jsonEscape(key));
bw.write("\":");
serialize(bw,value,pretty,indent+1);
if(iterator.hasNext()) {
bw.write(',');
newline(bw, indent+1, pretty);
}
}
}
newline(bw, indent, pretty);
bw.write('}');
break;
case array:
bw.write('[');
newline(bw, indent+1, pretty);
Iterator<JsonElement> arrayIterator = json.asArray().iterator();
while (arrayIterator.hasNext()) {
JsonElement value = arrayIterator.next();
boolean nestedPretty=false;
if(value.isObject()) {
nestedPretty=true;
}
serialize(bw,value,nestedPretty,indent+1);
if(arrayIterator.hasNext()) {
bw.write(',');