package foundation.data.meta.field; import foundation.json.IJSONWriter; import foundation.translator.ITranslator; import foundation.util.Util; public class FieldValueWriter extends FieldWriter { public FieldValueWriter(String fieldName, int index, ITranslator translator) { super(fieldName, index, translator); } @Override public void write(Object[] dataArray, IJSONWriter writer, boolean writeNull) { Object value = dataArray[index]; if (Util.isEmpty(value)) { if (!writeNull) { return; } else { writer.writeNull(fieldName); return; } } try { writer.writeJSON(fieldName, translator.toJSONString(value)); } catch (Exception e) { writer.writeJSON(fieldName, "\"error\""); } } @Override public boolean hasDictionaryTranslator() { return false; } @Override public boolean includeOrighinal() { return false; } @Override public Field getTargetField() { return null; } public void setActive(boolean value) { } public Object getValue(Object value) { return value; } }