package foundation.handler;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
|
import foundation.json.JSONWriter;
|
|
public class HandleResult {
|
|
private boolean success;
|
private String english;
|
private String chinese;
|
private List<ErrorMessage> errors;
|
|
|
public HandleResult() {
|
errors = new ArrayList<ErrorMessage>();
|
success = true;
|
}
|
|
public void success(String english, String chinese) {
|
this.english = english;
|
this.chinese = chinese;
|
}
|
|
public boolean isSuccess() {
|
return success;
|
}
|
|
public void reportOneMessage(String code, String english, String chinese) {
|
ErrorMessage error = new ErrorMessage(english, chinese);
|
errors.add(error);
|
}
|
|
public void writeJSON(JSONWriter writer) {
|
//1. 执行结果
|
if (success) {
|
writer.beginObject("result");
|
writer.write("english", english);
|
writer.write("chinese", chinese);
|
writer.endObject();
|
}
|
|
//2. 错误信息
|
if (!success) {
|
writer.beginArray("messages");
|
writeErrors(writer);
|
writer.endArray();
|
}
|
}
|
|
private void writeErrors(JSONWriter writer) {
|
for (ErrorMessage error: errors) {
|
writer.beginObject();
|
writer.write("code", error.getCode());
|
writer.write("message", error.getContent());
|
writer.endObject();
|
}
|
}
|
|
}
|