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.example.demo;
21
22 import org.slf4j.Logger;
23 import org.slf4j.LoggerFactory;
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 import java.lang.invoke.MethodHandles;
30
31
32
33
34 public class OnOffConverter implements Converter<String> {
35
36 private static final Logger LOG = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
37
38 @Override
39 public String getAsObject(final FacesContext facesContext, final UIComponent component, final String value)
40 throws ConverterException {
41 final String result = Boolean.parseBoolean(value) ? "on" : "off";
42 LOG.info("Got value = '" + value + "'. Result = '" + result + "'");
43 return result;
44 }
45
46 @Override
47 public String getAsString(final FacesContext facesContext, final UIComponent component, final String value)
48 throws ConverterException {
49 final String result = "on".equals(value) ? Boolean.TRUE.toString() : Boolean.FALSE.toString();
50 LOG.info("Got value = '" + value + "'. Result: '" + result + "'");
51 return result;
52 }
53 }