org.yestech.lib.xml.JodaDateTimeConverter Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of yeslib Show documentation
Show all versions of yeslib Show documentation
A collection of classes that can be used across yestech artifacts/components, but must not be dependant
on any yestech component. Most of the code is utility type code. When more than a few classes are
found to be in a package or the package start to handle more that a few reposibilities then a new
independant component is created and the existing code in yeslib is ported to the new component.
package org.yestech.lib.xml;
import com.thoughtworks.xstream.converters.SingleValueConverter;
import com.thoughtworks.xstream.converters.ConverterMatcher;
import org.joda.time.format.DateTimeFormatter;
import org.joda.time.DateTime;
/**
*
*
*/
public class JodaDateTimeConverter implements ConverterMatcher, SingleValueConverter
{
private final DateTimeFormatter dateTimeFormatter;
public JodaDateTimeConverter(DateTimeFormatter dateTimeFormatter)
{
this.dateTimeFormatter = dateTimeFormatter;
}
public DateTimeFormatter getDateTimeFormatter()
{
return dateTimeFormatter;
}
@Override
public boolean canConvert(Class type)
{
return DateTime.class.isAssignableFrom(type);
}
@Override
public String toString(Object obj)
{
DateTime dt = (DateTime) obj;
return dt.toString(dateTimeFormatter);
}
@Override
public Object fromString(String str)
{
return dateTimeFormatter.parseDateTime(str);
}
}