@Override public void writeResult(Object obj, long searchTime, boolean isSuccess) throws ResultWriterException, IOException { if (!isSuccess) { String errorMsg = null; if (obj == null) { errorMsg = "null"; } else { errorMsg = obj.toString(); } resultWriter .object() .key("status") .value(1) .key("time") .value(Formatter.getFormatTime(searchTime)) .key("total_count") .value(0) .key("error_msg") .value(errorMsg) .endObject(); } else { Result result = (Result) obj; // fieldNames = result.getFieldNameList(); resultWriter .object() .key("status") .value(0) .key("time") .value(Formatter.getFormatTime(searchTime)) .key("start") .value(result.getStart()) .key("total_count") .value(result.getTotalCount()) .key("count") .value(result.getCount()); // .key("field_count").value(fieldNames.length) // .key("fieldname_list") // .array("name"); // // for (int i = 0; i < fieldNames.length; i++) { // resultWriter.value(fieldNames[i]); // } // resultWriter.endArray(); writeBody(result, resultWriter, searchTime); resultWriter.endObject(); resultWriter.done(); } }