package com.fasterxml.jackson.databind.ser.std;
import java.io.IOException;
import java.text.DateFormat;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.*;
import com.fasterxml.jackson.databind.annotation.JacksonStdImpl;
@JacksonStdImpl
@SuppressWarnings("serial")
public class SqlDateSerializer
extends DateTimeSerializerBase<java.sql.Date>
{
public SqlDateSerializer() {
this(null, null);
}
protected SqlDateSerializer(Boolean useTimestamp, DateFormat customFormat) {
super(java.sql.Date.class, useTimestamp, customFormat);
}
@Override
public SqlDateSerializer withFormat(Boolean timestamp, DateFormat customFormat) {
return new SqlDateSerializer(timestamp, customFormat);
}
@Override
protected long _timestamp(java.sql.Date value) {
return (value == null) ? 0L : value.getTime();
}
@Override
public void serialize(java.sql.Date value, JsonGenerator g, SerializerProvider provider)
throws IOException
{
if (_asTimestamp(provider)) {
g.writeNumber(_timestamp(value));
return;
}
if (_customFormat == null) {
g.writeString(value.toString());
return;
}
_serializeAsString(value, g, provider);
}
}