1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.convert;
21
22 import org.apache.myfaces.tobago.internal.util.StringUtils;
23 import org.apache.myfaces.tobago.layout.Measure;
24
25 import javax.faces.component.UIComponent;
26 import javax.faces.context.FacesContext;
27 import javax.faces.convert.Converter;
28 import javax.faces.convert.ConverterException;
29
30
31
32
33 @org.apache.myfaces.tobago.apt.annotation.Converter(forClass = "org.apache.myfaces.tobago.layout.Measure")
34 public class MeasureConverter implements Converter<Measure> {
35
36 @Override
37 public Measure getAsObject(final FacesContext facesContext, final UIComponent component, final String string)
38 throws ConverterException {
39 if (StringUtils.isBlank(string)) {
40 return null;
41 } else {
42 return Measure.valueOf(string);
43 }
44 }
45
46 @Override
47 public String getAsString(final FacesContext facesContext, final UIComponent component, final Measure measure)
48 throws ConverterException {
49 if (measure == null) {
50 return null;
51 }
52 try {
53 return measure.serialize();
54 } catch (final ClassCastException e) {
55 throw new ConverterException("object='" + measure + "'", e);
56 }
57 }
58 }