Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class SingleValueCalendarConverter implements com.thoughtworks.xstream.converters.Converter {
- public void marshal(Object source, HierarchicalStreamWriter writer,
- MarshallingContext context) {
- Calendar calendar = (Calendar) source;
- String date = DateUtil.parseString( calendar.getTime(), DateUtil.DD_MM_YYYY_HH_MM_SS);
- writer.setValue(String.valueOf( date ) );
- }
- public HierarchicalStreamWriter createWriter(Writer out) {
- return new PrettyPrintWriter(out) {
- protected void writeText(QuickWriter writer, String text) {
- writer.write("<[CDATA[");
- writer.write(text);
- writer.write("]]>");
- }
- };
- }
- public Object unmarshal(HierarchicalStreamReader reader,
- UnmarshallingContext context) {
- try {
- GregorianCalendar calendar = new GregorianCalendar();
- Date date = DateUtil.parseDate(reader.getValue(), DateUtil.DD_MM_YYYY_HH_MM_SS);
- calendar.setTime(date);
- return calendar;
- } catch (Exception e) {
- Log.e(this.getClass().getSimpleName(), e.getLocalizedMessage(), e);
- }
- return null;
- }
- public boolean canConvert(Class type) {
- return type.equals(GregorianCalendar.class);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment