class TimestampDataConverter implements DataConverter<Timestamp>, DateParser<Timestamp> {

    @Override
    public Timestamp stringToValue(String rawData) throws ParseException {
        try{
            return StringUtils.isNotEmpty(rawData) ? new Timestamp(getDateTimeFormatter().parse(rawData).getTime()) : null;
        } catch (ParseException e){
            try {
               return Timestamp.valueOf(rawData);
            } catch (IllegalArgumentException ex){
                throw e;
            }
        }
    }

}