Class AbstractListModelConverter<C extends org.zkoss.zk.ui.Component>

java.lang.Object
org.zkoss.bind.converter.sys.AbstractListModelConverter<C>
All Implemented Interfaces:
Serializable, Converter<Object,Object,C>
Direct Known Subclasses:
ComboboxModelConverter, GridModelConverter, ListboxModelConverter, RadiogroupModelConverter, SelectboxModelConverter, TabboxModelConverter

public abstract class AbstractListModelConverter<C extends org.zkoss.zk.ui.Component> extends Object implements Converter<Object,Object,C>, Serializable
The abstract Converter implementation for converting collection to ListModel and vice versa.
Since:
6.0.0
Author:
dennis
See Also:
  • Constructor Details

    • AbstractListModelConverter

      public AbstractListModelConverter()
  • Method Details

    • getComponentModel

      protected abstract org.zkoss.zul.ListModel<?> getComponentModel(C comp)
      Parameters:
      comp - the component that has listmodel
      Returns:
      null if no list model for the component
    • handleWrappedModel

      protected org.zkoss.zul.ListModel<?> handleWrappedModel(BindContext ctx, C comp, org.zkoss.zul.ListModel<?> model)
      post processing the wrapped model. default return original one
      Parameters:
      ctx - the context
      comp - the component of the converter
      model - the wrapped model
      Returns:
      the list model
    • coerceToUi

      public Object coerceToUi(Object val, C comp, BindContext ctx)
      Convert a Set, Map, List, Object[], Enum, or other kind of ListModel to associated ListModel.
      Specified by:
      coerceToUi in interface Converter<Object,Object,C extends org.zkoss.zk.ui.Component>
      Parameters:
      val - must be instanceof Set, Map, List, Object[], Enum Class, or other kind of ListModel implementation.
      comp - associated component
      ctx - bind context
      Returns:
      the value to load to a component
    • coerceToBean

      public Object coerceToBean(Object val, C comp, BindContext ctx)
      Convert a ListModel to Set, Map, List, or ListModel (itself).
      Specified by:
      coerceToBean in interface Converter<Object,Object,C extends org.zkoss.zk.ui.Component>
      Parameters:
      val - must be ListModelSet, ListModelList, ListModelMap, or other kind of ListModel
      comp - associated component
      ctx - bind context
      Returns:
      the value to save to a bean