/* * @(#) DateConverter.java * * Copyright 2002 - 2003 JIDE Software. All rights reserved. */ package com.jidesoft.converter; import java.util.Calendar; import java.util.Date; /** * Converter which converts Calendar to String and converts it back. */ public class CalendarConverter extends DateConverter { /** * Creates a new CalendarConverter. */ public CalendarConverter() { } @Override public String toString(Object object, ConverterContext context) { if (object == null) { return ""; } else if (!(object instanceof Calendar)) { return object.toString(); } else { return super.toString(object, context); } } /** * Converts from a String to a Calendar. * * @param string the string to be converted. * @param context the context. It could be DATETIME_CONTEXT, DATE_CONTEXT or TIME_CONTEXT. * @return the Calendar object. If the string is null or empty, null will be returned. If the string cannot be * parsed as a date, the string itself will be returned. */ @Override public Object fromString(String string, ConverterContext context) { if (string == null || string.trim().length() == 0) { return null; } Object date = super.fromString(string, context); Calendar calendar = Calendar.getInstance(); if (date instanceof Date) { calendar.setTime((Date) date); return calendar; } else { return string; } } }