ValueEncoder is used to convert server side values to client side values.
It contains two methods
String toClient(V value) is used to convert server side value into a client side representation
this value should be parseable by the other toValue(String) method of the ValueEncoder , in some cases this returned string is used as identifier in the toValue method, the most used type of V is Object
V toValue(String clientValue) converts the client-side representation obtained from toClient(V value) back to the server side representation.
In another word,the returned value of these two methods can be parameter of each other