Guest User

Untitled

a guest
Feb 7th, 2012
316
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.33 KB | None | 0 0
  1.  
  2. public class SingleValueCalendarConverter implements com.thoughtworks.xstream.converters.Converter {
  3.  
  4.    
  5.     public void marshal(Object source, HierarchicalStreamWriter writer,
  6.             MarshallingContext context) {
  7.         Calendar calendar = (Calendar) source;
  8.         String date = DateUtil.parseString( calendar.getTime(), DateUtil.DD_MM_YYYY_HH_MM_SS);
  9.         writer.setValue(String.valueOf( date ) );  
  10.     }
  11.     public HierarchicalStreamWriter createWriter(Writer out) {
  12.         return new PrettyPrintWriter(out) {
  13.               protected void writeText(QuickWriter writer, String text) {
  14.                     writer.write("<[CDATA[");
  15.                     writer.write(text);
  16.                     writer.write("]]>");
  17.            }
  18.         };
  19.     }
  20.     public Object unmarshal(HierarchicalStreamReader reader,
  21.             UnmarshallingContext context) {
  22.         try {
  23.             GregorianCalendar calendar = new GregorianCalendar();
  24.             Date date = DateUtil.parseDate(reader.getValue(), DateUtil.DD_MM_YYYY_HH_MM_SS);
  25.             calendar.setTime(date);
  26.             return calendar;
  27.         } catch (Exception e) {
  28.             Log.e(this.getClass().getSimpleName(), e.getLocalizedMessage(), e);
  29.         }
  30.         return null;
  31.  
  32.     }
  33.  
  34.     public boolean canConvert(Class type) {
  35.         return type.equals(GregorianCalendar.class);
  36.     }
  37.  
  38.  
  39.      
  40. }
Advertisement
Add Comment
Please, Sign In to add comment