org.zkoss.bind.converter.sys.DefaultJSONBindingParamConverter Maven / Gradle / Ivy
/** DefaultJSONBindingParamConverter.java.
Purpose:
Description:
History:
9:52:47 AM Mar 12, 2015, Created by jumperchen
Copyright (C) 2015 Potix Corporation. All Rights Reserved.
*/
package org.zkoss.bind.converter.sys;
import java.io.Serializable;
import org.zkoss.bind.BindContext;
import org.zkoss.bind.Converter;
import org.zkoss.bind.impl.ParamCall;
import org.zkoss.json.JSONValue;
import org.zkoss.lang.Classes;
import org.zkoss.zk.ui.Component;
/**
* A default JSON binding parameter converter
* @author jumperchen
* @since 8.0.0
*/
public class DefaultJSONBindingParamConverter implements Converter, Serializable {
public Object coerceToUi(Object val, Component component, BindContext ctx) {
return JSONValue.toJSONString(val);
}
public Object coerceToBean(Object val, Component component, BindContext ctx) {
return Classes.coerce((Class) ctx.getAttribute(ParamCall.BINDING_PARAM_CALL_TYPE), val);
}
}