package foundation.icall; import java.util.ArrayList; import java.util.List; import foundation.icall.callin.ReceivedFields; import foundation.json.IJSONProvider; import foundation.json.IJSONWriter; public class InboundResult implements IJSONProvider { private String dataName; private int received; private int saved; private ICallMeta meta; private String responseBody; private ReceivedFields receivedFields; private List errors; public InboundResult(ICall iCall) { this.dataName = iCall.getDataName(); this.meta = iCall.getMeta(); this.errors = new ArrayList(); } public void setReceived(int received) { this.received = received; } public void setSaved(int saved) { this.saved = saved; } public void setReceivedFields(ReceivedFields fields) { receivedFields = fields; } public void setMeta(ICallMeta meta) { this.meta = meta; } public void setResponseBody(String body) { this.responseBody = body; } @Override public void writeJSON(IJSONWriter writer) { //1. if (responseBody != null) { writer.write(responseBody); return; } //2.1 writer.write("message", meta.getName() + "ζŽ₯ζ”ΆζˆεŠŸ"); writer.write("dataName", dataName); writer.write("received", received); writer.write("saved", saved); //2.2 writer.beginArray("errors"); for (String error: errors) { writer.write(error); } writer.endArray(); //2.3 if (receivedFields != null) { writer.beginObject("fields"); receivedFields.writeJSONBody(writer); writer.endObject(); } } }