1 package org.jcr_blog.jcrmapping.converter.basic;
2
3 import java.util.Calendar;
4 import java.util.Date;
5 import javax.enterprise.context.ApplicationScoped;
6 import javax.jcr.RepositoryException;
7 import javax.jcr.Value;
8 import javax.jcr.ValueFactory;
9 import org.jcr_blog.jcrmapping.converter.Converter;
10
11
12
13
14
15 @ApplicationScoped
16 public class DateConverter implements Converter {
17
18 @Override
19 public boolean isApplicableObjectToValue(Object object) {
20 return object instanceof Date;
21 }
22
23 @Override
24 public Value toValue(Object object, ValueFactory valueFactory) {
25 Calendar c = Calendar.getInstance();
26 c.setTime((Date) object);
27 return valueFactory.createValue(c);
28 }
29
30 @Override
31 public boolean isApplicableValueToObject(Class<?> clazz) {
32 return clazz.isAssignableFrom(Date.class);
33 }
34
35 @Override
36 public Object toObject(Value value) throws RepositoryException {
37 return value.getDate().getTime();
38 }
39 }