package com.revolsys.record.io.format.saif.util;
import java.sql.Date;
public class DateConverter implements OsnConverter {
public static final Date NULL_DATE = new Date(0, 0, 1);
@Override
public Object read(final OsnIterator iterator) {
int year = 0;
int month = 0;
int day = 1;
boolean nullDate = false;
String name = iterator.nextFieldName();
while (name != null) {
if (name.equals("day")) {
day = iterator.nextIntValue();
if (day == 0) {
day = 1;
}
} else if (name.equals("month")) {
month = iterator.nextIntValue();
if (month > 0) {
month -= 1;
}
} else if (name.equals("year")) {
year = iterator.nextIntValue();
if (year > 0) {
year -= 1900;
} else {
nullDate = true;
}
}
name = iterator.nextFieldName();
}
if (nullDate) {
return NULL_DATE;
} else {
return new Date(year, month, day);
}
}
@Override
public void write(final OsnSerializer serializer, final Object object) {
}
}