package org.test4j.json.encoder.single.spec;
import java.io.Writer;
import java.util.Date;
import org.test4j.json.encoder.single.SpecTypeEncoder;
import org.test4j.json.encoder.single.fixed.StringEncoder;
import org.test4j.tools.commons.DateHelper;
@SuppressWarnings("rawtypes")
public class DateEncoder<T extends Date> extends SpecTypeEncoder<T> {
public static DateEncoder instance = new DateEncoder();
private DateEncoder() {
super(Date.class);
}
@Override
protected void encodeSingleValue(T target, Writer writer) throws Exception {
String df = dateFormat == null ? "yyyy-MM-dd HH:mm:ss" : dateFormat;
String date = DateHelper.toDateTimeStr(target, df);
writer.append(quote_Char);
StringEncoder.writeEscapeString(date, writer);
writer.append(quote_Char);
}
@Override
protected void encodeOtherProperty(T target, Writer writer) throws Exception {
// TODO Auto-generated method stub
}
private static String dateFormat = null;
public static void setDateFormat(String format) {
dateFormat = format;
}
}