package org.json;
import java.io.IOException;
import java.io.Writer;
import java.util.Iterator;
import org.romaframework.aspect.view.html.HtmlViewAspectHelper;
import org.romaframework.aspect.view.html.HtmlViewCodeBuffer;
public class JsJSONObject extends JSONObject {
@Override
public Writer write(Writer writer) throws JSONException {
try {
boolean b = false;
Iterator<String> keys = keys();
writer.write('{');
while (keys.hasNext()) {
if (b) {
writer.write(',');
}
Object k = keys.next();
writer.write(quote(k.toString()));
writer.write(':');
Object v = this.map.get(k);
if (v instanceof JSONObject) {
((JSONObject) v).write(writer);
} else if (v instanceof JSONArray) {
((JSONArray) v).write(writer);
} else if (v instanceof JSONWriteable) {
writer.write('"');
((JSONWriteable) v).write(new QuotedWriter(writer));
writer.write('"');
} else {
writer.write(valueToString(v));
}
b = true;
}
HtmlViewCodeBuffer codeBuffer = HtmlViewAspectHelper.getJsBuffer();
if (codeBuffer != null) {
if (b) {
writer.write(',');
}
writer.write(quote("romajs"));
writer.write(':');
writer.write(valueToString(codeBuffer.getBufferContent()));
}
writer.write('}');
return writer;
} catch (IOException e) {
throw new JSONException(e);
}
}
}