Class BinderImpl

    • Constructor Summary

      Constructors 
      Constructor Description
      BinderImpl()  
      BinderImpl​(java.lang.String qname, java.lang.String qscope)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addChildrenInitBinding​(org.zkoss.zk.ui.Component comp, java.lang.String initExpr, java.util.Map<java.lang.String,​java.lang.Object> initArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
      init children of a component by an expression, it only execute once
      void addChildrenLoadBindings​(org.zkoss.zk.ui.Component comp, java.lang.String loadExpr, java.lang.String[] beforeCmds, java.lang.String[] afterCmds, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
      Add new children-load-bindings.
      void addCommandBinding​(org.zkoss.zk.ui.Component comp, java.lang.String evtnm, java.lang.String commandExpr, java.util.Map<java.lang.String,​java.lang.Object> args)
      Add a new command binding.
      void addFormAssociatedSaveBinding​(org.zkoss.zk.ui.Component associatedComp, java.lang.String formId, SaveBinding saveBinding, java.lang.String fieldName)
      Add a association between formId and a associated save binding(save binding inside a form), the form has to exist in the parent components
      void addFormInitBinding​(org.zkoss.zk.ui.Component comp, java.lang.String id, java.lang.String initExpr, java.util.Map<java.lang.String,​java.lang.Object> initArgs)
      init a component form by expression, it only execute once
      void addFormLoadBindings​(org.zkoss.zk.ui.Component comp, java.lang.String id, java.lang.String loadExpr, java.lang.String[] beforeCmds, java.lang.String[] afterCmds, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs)
      Add new form-load-bindings.
      void addFormSaveBindings​(org.zkoss.zk.ui.Component comp, java.lang.String id, java.lang.String saveExpr, java.lang.String[] beforeCmds, java.lang.String[] afterCmds, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String validatorExpr, java.util.Map<java.lang.String,​java.lang.Object> validatorArgs)
      Add new form-save-bindings.
      void addGlobalCommandBinding​(org.zkoss.zk.ui.Component comp, java.lang.String evtnm, java.lang.String commandExpr, java.util.Map<java.lang.String,​java.lang.Object> args)
      Add a new global-command binding.
      void addPhaseListener​(PhaseListener listener)
      void addPropertyInitBinding​(org.zkoss.zk.ui.Component comp, java.lang.String attr, java.lang.String initExpr, java.util.Map<java.lang.String,​java.lang.Object> initArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
      init a component property by a expression, it only execute once
      void addPropertyLoadBindings​(org.zkoss.zk.ui.Component comp, java.lang.String attr, java.lang.String loadExpr, java.lang.String[] beforeCmds, java.lang.String[] afterCmds, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
      Add new property-load-bindings.
      void addPropertySaveBindings​(org.zkoss.zk.ui.Component comp, java.lang.String attr, java.lang.String saveExpr, java.lang.String[] beforeCmds, java.lang.String[] afterCmds, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs, java.lang.String validatorExpr, java.util.Map<java.lang.String,​java.lang.Object> validatorArgs)
      Add new property-save-bindings.
      void addReferenceBinding​(org.zkoss.zk.ui.Component comp, java.lang.String attr, java.lang.String loadExpr, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs)
      Add a new reference-binding.
      void addSaveFormFieldName​(Form form, java.lang.String fieldName)
      Adds a field name for saving with the given Form.
      void addSaveFormFieldName​(Form form, java.util.Set<java.lang.String> fieldNames)
      Adds all field names for saving with the given Form.
      protected void checkInit()  
      protected ParamCall createParamCall​(BindContext ctx)  
      void destroy​(org.zkoss.zk.ui.Component comp, java.lang.Object viewModel)
      Destroys the binder with a root component and viewModel object.
      protected void doExecute​(org.zkoss.zk.ui.Component comp, java.lang.String command, java.util.Map<java.lang.String,​java.lang.Object> commandArgs, BindContext ctx, java.util.Set<Property> notifys)  
      protected void doLoadAfter​(org.zkoss.zk.ui.Component comp, java.lang.String command, BindContext ctx)  
      protected void doLoadBefore​(org.zkoss.zk.ui.Component comp, java.lang.String command, BindContext ctx)  
      protected void doSaveAfter​(org.zkoss.zk.ui.Component comp, java.lang.String command, org.zkoss.zk.ui.event.Event evt, BindContext ctx, java.util.Set<Property> notifys)  
      protected void doSaveBefore​(org.zkoss.zk.ui.Component comp, java.lang.String command, org.zkoss.zk.ui.event.Event evt, BindContext ctx, java.util.Set<Property> notifys)  
      protected boolean doValidate​(org.zkoss.zk.ui.Component comp, java.lang.String command, org.zkoss.zk.ui.event.Event evt, BindContext ctx, java.util.Set<Property> notifys)  
      protected void fireNotifyChanges​(java.util.Set<Property> notifys)  
      BindingAnnotationInfoChecker getBindingAnnotationInfoChecker()
      get binding annotation info checker
      BindingExecutionInfoCollector getBindingExecutionInfoCollector()
      get binding execution info collector
      java.util.Map<java.lang.String,​java.util.List<Binding>> getBindings​(org.zkoss.zk.ui.Component comp)  
      Converter getConverter​(java.lang.String name)
      Returns the _converter of the given _converter name.
      java.util.Map<java.lang.String,​java.lang.Object> getDynamicAttrs()
      Internal use only.
      BindEvaluatorX getEvaluatorX()
      Returns the BindEvaluatorX used by this Binder.
      protected org.zkoss.zk.ui.event.EventQueue<org.zkoss.zk.ui.event.Event> getEventQueue()  
      Form getForm​(org.zkoss.zk.ui.Component comp, java.lang.String id)
      Get the form of the component
      java.util.Set<SaveBinding> getFormAssociatedSaveBindings​(org.zkoss.zk.ui.Component comp)
      Get associated save bindings of a form in a component
      java.util.List<Binding> getLoadPromptBindings​(org.zkoss.zk.ui.Component comp, java.lang.String attr)
      get all load prompt binding of the component and attribute
      java.util.Map<java.lang.String,​java.lang.reflect.Method> getMatchMediaValue()
      Returns an unmodifiable Map containing all the MatchMedia annotation values of this binder.
      PhaseListener getPhaseListener()  
      java.util.List<PhaseListener> getPhaseListeners()
      get the first PhaseListener
      java.lang.String getQueueName()
      Returns the queue name of this binder
      java.lang.String getQueueScope()
      Returns the queue scope of this binder
      protected java.lang.Object getRenderer​(java.lang.String name)  
      java.util.Set<java.lang.String> getSaveFormFieldNames​(Form form)
      Returns all field names for saving with the given Form.
      TemplateResolver getTemplateResolver​(org.zkoss.zk.ui.Component comp, java.lang.String attr)
      Tracker getTracker()
      Returns associated dependency tracker of this binder.
      ValidationMessages getValidationMessages()
      Validator getValidator​(java.lang.String name)
      Returns the _validator of the given _validator name.
      org.zkoss.zk.ui.Component getView()
      Returns associated root component of this binder.
      java.lang.Object getViewModel()
      Returns associated ViewModel of this binder.
      boolean hasValidator​(org.zkoss.zk.ui.Component comp, java.lang.String attr)
      is there a validator on the attribute of component
      void init​(org.zkoss.zk.ui.Component comp, java.lang.Object viewModel, java.util.Map<java.lang.String,​java.lang.Object> initArgs)
      Initializes the binder with a root component and viewModel object.
      void initActivator()
      Internal use only.
      void initQueue()
      Internal use only.
      boolean isActivating()
      check if binder is in activating state
      void loadComponent​(org.zkoss.zk.ui.Component comp, boolean loadinit)
      Internal Use only. init and load the component
      protected void loadComponent0​(org.zkoss.zk.ui.Component comp, boolean loadinit)  
      protected CommandBinding newCommandBinding​(org.zkoss.zk.ui.Component comp, java.lang.String evtnm, java.lang.String cmdScript, java.util.Map<java.lang.String,​java.lang.Object> args)
      Make this extenable.
      protected InitChildrenBinding newInitChildrenBinding​(org.zkoss.zk.ui.Component comp, java.lang.String initExpr, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
      Make this extenable.
      protected InitFormBinding newInitFormBinding​(org.zkoss.zk.ui.Component comp, java.lang.String formId, java.lang.String initExpr, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs)
      Make this extenable.
      protected InitPropertyBinding newInitPropertyBinding​(org.zkoss.zk.ui.Component comp, java.lang.String attr, java.lang.String loadAttr, java.lang.Class<?> attrType, java.lang.String initExpr, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
      Make this extenable.
      protected LoadChildrenBinding newLoadChildrenBinding​(org.zkoss.zk.ui.Component comp, java.lang.String loadExpr, ConditionType conditionType, java.lang.String command, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
      Make this extenable.
      protected LoadFormBinding newLoadFormBinding​(org.zkoss.zk.ui.Component comp, java.lang.String formId, java.lang.String loadExpr, ConditionType conditionType, java.lang.String command, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs)
      Make this extenable.
      protected LoadPropertyBinding newLoadPropertyBinding​(org.zkoss.zk.ui.Component comp, java.lang.String attr, java.lang.String loadAttr, java.lang.Class<?> attrType, java.lang.String loadExpr, ConditionType conditionType, java.lang.String command, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
      Make this extenable.
      protected SaveFormBinding newSaveFormBinding​(org.zkoss.zk.ui.Component comp, java.lang.String formId, java.lang.String saveExpr, ConditionType conditionType, java.lang.String command, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String validatorExpr, java.util.Map<java.lang.String,​java.lang.Object> validatorArgs)
      Make this extenable.
      protected SavePropertyBinding newSavePropertyBinding​(org.zkoss.zk.ui.Component comp, java.lang.String attr, java.lang.String saveAttr, java.lang.String saveExpr, ConditionType conditionType, java.lang.String command, java.util.Map<java.lang.String,​java.lang.Object> bindingArgs, java.lang.String converterExpr, java.util.Map<java.lang.String,​java.lang.Object> converterArgs, java.lang.String validatorExpr, java.util.Map<java.lang.String,​java.lang.Object> validatorArgs)
      Make this extenable.
      void notifyChange​(java.lang.Object base, java.lang.String attr)
      Notify change of the property.
      void postCommand​(java.lang.String command, java.util.Map<java.lang.String,​java.lang.Object> args)
      post command this binder, binder will queue the command, and fired later.
      void removeBindings​(java.util.Set<org.zkoss.zk.ui.Component> comps)
      Remove all managed bindings that associated with the specified components.
      void removeBindings​(org.zkoss.zk.ui.Component comp)
      Remove all bindings that associated with the specified component.
      void removeBindings​(org.zkoss.zk.ui.Component comp, java.lang.String key)
      Remove all bindings that associated with the specified component and key (_fieldExpr|evtnm|formid).
      java.util.Set<java.lang.String> removeSaveFormFieldNames​(Form self)
      Remove all field names for saving with the given Form.
      int sendCommand​(java.lang.String command, java.util.Map<java.lang.String,​java.lang.Object> args)
      send command fired to this binder and process the command immediately
      void setDynamicAttrs​(java.lang.String command, java.lang.Object value)
      Internal use only.
      void setPhaseListener​(PhaseListener listener)
      Sets the associated phase listener to intervene the binding life cycle.
      void setTemplate​(org.zkoss.zk.ui.Component comp, java.lang.String attr, java.lang.String templateExpr, java.util.Map<java.lang.String,​java.lang.Object> templateArgs)
      set template to a component property by an expression
      void setValidationMessages​(ValidationMessages messages)
      void setViewModel​(java.lang.Object vm)
      Sets associated ViewModel of this binder.
      void storeForm​(org.zkoss.zk.ui.Component comp, java.lang.String id, Form form)
      Store the form in the component with id
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • DISABLE_METHOD_CACHE

        public static final boolean DISABLE_METHOD_CACHE
      • ZKFORMPROXYNOTIFIEDKEY

        public static final java.lang.String ZKFORMPROXYNOTIFIEDKEY
        See Also:
        Constant Field Values
    • Constructor Detail

      • BinderImpl

        public BinderImpl()
      • BinderImpl

        public BinderImpl​(java.lang.String qname,
                          java.lang.String qscope)
    • Method Detail

      • init

        public void init​(org.zkoss.zk.ui.Component comp,
                         java.lang.Object viewModel,
                         java.util.Map<java.lang.String,​java.lang.Object> initArgs)
        Description copied from interface: Binder
        Initializes the binder with a root component and viewModel object. You should never call this if you use AnnotateBinder and zk annotation
        Specified by:
        init in interface Binder
        Parameters:
        comp - root component of binder
        viewModel - viewModel object
        initArgs - args key-value pairs for initial, nullable
        Since:
        6.0.1
      • destroy

        public void destroy​(org.zkoss.zk.ui.Component comp,
                            java.lang.Object viewModel)
        Description copied from interface: Binder
        Destroys the binder with a root component and viewModel object. You should never call this if you use AnnotateBinder and zk annotation
        Specified by:
        destroy in interface Binder
        Parameters:
        comp - root component of binder
        viewModel - viewModel object
      • checkInit

        protected void checkInit()
      • getBindings

        public java.util.Map<java.lang.String,​java.util.List<Binding>> getBindings​(org.zkoss.zk.ui.Component comp)
      • setViewModel

        public void setViewModel​(java.lang.Object vm)
        Description copied from interface: Binder
        Sets associated ViewModel of this binder.
        Specified by:
        setViewModel in interface Binder
        Parameters:
        vm - the associated view model of this binder.
      • getViewModel

        public java.lang.Object getViewModel()
        Description copied from interface: Binder
        Returns associated ViewModel of this binder.
        Specified by:
        getViewModel in interface Binder
        Returns:
        associated ViewModel of this binder.
      • getConverter

        public Converter getConverter​(java.lang.String name)
        Description copied from interface: Binder
        Returns the _converter of the given _converter name.
        Specified by:
        getConverter in interface Binder
        Parameters:
        name - _converter name
        Returns:
        the _converter of the given _converter name.
      • getValidator

        public Validator getValidator​(java.lang.String name)
        Description copied from interface: Binder
        Returns the _validator of the given _validator name.
        Specified by:
        getValidator in interface Binder
        Parameters:
        name - _validator name
        Returns:
        the _validator of the given _validator name.
      • getRenderer

        protected java.lang.Object getRenderer​(java.lang.String name)
      • storeForm

        public void storeForm​(org.zkoss.zk.ui.Component comp,
                              java.lang.String id,
                              Form form)
        Description copied from interface: BinderCtrl
        Store the form in the component with id
        Specified by:
        storeForm in interface BinderCtrl
        Parameters:
        comp - the component to store the form
        id - the form id
        form - the form instance
      • getForm

        public Form getForm​(org.zkoss.zk.ui.Component comp,
                            java.lang.String id)
        Description copied from interface: BinderCtrl
        Get the form of the component
        Specified by:
        getForm in interface BinderCtrl
        Parameters:
        comp - the component has the form
        id - the form id
        Returns:
        the form if there is a form inside the component with the id
      • addFormInitBinding

        public void addFormInitBinding​(org.zkoss.zk.ui.Component comp,
                                       java.lang.String id,
                                       java.lang.String initExpr,
                                       java.util.Map<java.lang.String,​java.lang.Object> initArgs)
        Description copied from interface: Binder
        init a component form by expression, it only execute once
        Specified by:
        addFormInitBinding in interface Binder
        Parameters:
        comp - the associated component, must not null
        id - the form id, must not null
        initExpr - init expression, nullable
        initArgs - args key-value pairs for this init, nullable
      • addFormLoadBindings

        public void addFormLoadBindings​(org.zkoss.zk.ui.Component comp,
                                        java.lang.String id,
                                        java.lang.String loadExpr,
                                        java.lang.String[] beforeCmds,
                                        java.lang.String[] afterCmds,
                                        java.util.Map<java.lang.String,​java.lang.Object> bindingArgs)
        Description copied from interface: Binder
        Add new form-load-bindings. It create a prompt|conditional form-load-binding depends on beforeCmds and afterCmds. If both beforeCmds and afterCmds are null or empty, it create a prompt binding.
        Specified by:
        addFormLoadBindings in interface Binder
        Parameters:
        comp - the associated component, must not null
        id - the form id, must not null
        loadExpr - load expression, nullable
        beforeCmds - load before these commands, the command here is not a EL expression. nullable
        afterCmds - load after these commands, the command here is not a EL expression. nullable
        bindingArgs - args key-value pairs for this binding, nullable
      • addFormSaveBindings

        public void addFormSaveBindings​(org.zkoss.zk.ui.Component comp,
                                        java.lang.String id,
                                        java.lang.String saveExpr,
                                        java.lang.String[] beforeCmds,
                                        java.lang.String[] afterCmds,
                                        java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                        java.lang.String validatorExpr,
                                        java.util.Map<java.lang.String,​java.lang.Object> validatorArgs)
        Description copied from interface: Binder
        Add new form-save-bindings. It create a conditional form-save-binding depends on beforeCmds and afterCmds. Since form-save-binding is always triggered by command, if both beforeCmds and afterCmds are null or empty, it throws an exception.
        Specified by:
        addFormSaveBindings in interface Binder
        Parameters:
        comp - the associated component, must not null
        id - the form id, must not null
        saveExpr - save expression, nullable
        beforeCmds - save before these commands, the command here is not a EL expression. nullable
        afterCmds - save after these commands, the command here is not a EL expression. nullable
        bindingArgs - args key-value pairs for this binding, nullable
        validatorExpr - the converter expression, nullable
        validatorArgs - args key-value pairs for validator, nullable
      • addPropertyInitBinding

        public void addPropertyInitBinding​(org.zkoss.zk.ui.Component comp,
                                           java.lang.String attr,
                                           java.lang.String initExpr,
                                           java.util.Map<java.lang.String,​java.lang.Object> initArgs,
                                           java.lang.String converterExpr,
                                           java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
        Description copied from interface: Binder
        init a component property by a expression, it only execute once
        Specified by:
        addPropertyInitBinding in interface Binder
        Parameters:
        comp - the associated component, must not null
        attr - the associated attribute of the component; ex label, style, must not null
        initExpr - init expression, must not null
        initArgs - args key-value pairs for initial, nullable
        converterExpr - the converter expression, nullable
        converterArgs - args key-value pairs for converter, nullable
      • addPropertyLoadBindings

        public void addPropertyLoadBindings​(org.zkoss.zk.ui.Component comp,
                                            java.lang.String attr,
                                            java.lang.String loadExpr,
                                            java.lang.String[] beforeCmds,
                                            java.lang.String[] afterCmds,
                                            java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                            java.lang.String converterExpr,
                                            java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
        Description copied from interface: Binder
        Add new property-load-bindings. It creates a prompt|conditional property-load-binding depends on beforeCmds and afterCmds. If both beforeCmds and afterCmds are null or empty, it create a prompt binding.
        Specified by:
        addPropertyLoadBindings in interface Binder
        Parameters:
        comp - the associated component, must not null
        attr - the associated attribute of the component; ex label, style, must not null
        loadExpr - load expression, must not null
        beforeCmds - load before these commands, the command here is not a EL expression. nullable
        afterCmds - load after these commands, the command here is not a EL expression. nullable
        bindingArgs - args key-value pairs for this binding, nullable
        converterExpr - the converter expression, nullable
        converterArgs - args key-value pairs for converter, nullable
      • addPropertySaveBindings

        public void addPropertySaveBindings​(org.zkoss.zk.ui.Component comp,
                                            java.lang.String attr,
                                            java.lang.String saveExpr,
                                            java.lang.String[] beforeCmds,
                                            java.lang.String[] afterCmds,
                                            java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                            java.lang.String converterExpr,
                                            java.util.Map<java.lang.String,​java.lang.Object> converterArgs,
                                            java.lang.String validatorExpr,
                                            java.util.Map<java.lang.String,​java.lang.Object> validatorArgs)
        Description copied from interface: Binder
        Add new property-save-bindings. It creates a prompt|conditional property-save-binding depends on beforeCmds and afterCmds. If both beforeCmds and afterCmds are null or empty, it create a prompt binding.
        Specified by:
        addPropertySaveBindings in interface Binder
        Parameters:
        comp - the associated component, must not null
        attr - the associated attribute of the component; ex value, check, must not null
        saveExpr - save expression, nullable
        beforeCmds - save before these commands, the command here is not a EL expression. nullable
        afterCmds - save after these commands, the command here is not a EL expression. nullable
        bindingArgs - args key-value pairs for this binding, nullable
        converterExpr - the converter expression, nullable
        converterArgs - args key-value pairs for converter, nullable
        validatorExpr - the converter expression, nullable
        validatorArgs - args key-value pairs for validator, nullable
      • newLoadPropertyBinding

        protected LoadPropertyBinding newLoadPropertyBinding​(org.zkoss.zk.ui.Component comp,
                                                             java.lang.String attr,
                                                             java.lang.String loadAttr,
                                                             java.lang.Class<?> attrType,
                                                             java.lang.String loadExpr,
                                                             ConditionType conditionType,
                                                             java.lang.String command,
                                                             java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                                             java.lang.String converterExpr,
                                                             java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
        Make this extenable.
        Since:
        7.0.3
      • newSavePropertyBinding

        protected SavePropertyBinding newSavePropertyBinding​(org.zkoss.zk.ui.Component comp,
                                                             java.lang.String attr,
                                                             java.lang.String saveAttr,
                                                             java.lang.String saveExpr,
                                                             ConditionType conditionType,
                                                             java.lang.String command,
                                                             java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                                             java.lang.String converterExpr,
                                                             java.util.Map<java.lang.String,​java.lang.Object> converterArgs,
                                                             java.lang.String validatorExpr,
                                                             java.util.Map<java.lang.String,​java.lang.Object> validatorArgs)
        Make this extenable.
        Since:
        7.0.3
      • newInitPropertyBinding

        protected InitPropertyBinding newInitPropertyBinding​(org.zkoss.zk.ui.Component comp,
                                                             java.lang.String attr,
                                                             java.lang.String loadAttr,
                                                             java.lang.Class<?> attrType,
                                                             java.lang.String initExpr,
                                                             java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                                             java.lang.String converterExpr,
                                                             java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
        Make this extenable.
        Since:
        7.0.3
      • newInitChildrenBinding

        protected InitChildrenBinding newInitChildrenBinding​(org.zkoss.zk.ui.Component comp,
                                                             java.lang.String initExpr,
                                                             java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                                             java.lang.String converterExpr,
                                                             java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
        Make this extenable.
        Since:
        7.0.3
      • newLoadChildrenBinding

        protected LoadChildrenBinding newLoadChildrenBinding​(org.zkoss.zk.ui.Component comp,
                                                             java.lang.String loadExpr,
                                                             ConditionType conditionType,
                                                             java.lang.String command,
                                                             java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                                             java.lang.String converterExpr,
                                                             java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
        Make this extenable.
        Since:
        7.0.3
      • newCommandBinding

        protected CommandBinding newCommandBinding​(org.zkoss.zk.ui.Component comp,
                                                   java.lang.String evtnm,
                                                   java.lang.String cmdScript,
                                                   java.util.Map<java.lang.String,​java.lang.Object> args)
        Make this extenable.
        Since:
        7.0.3
      • newInitFormBinding

        protected InitFormBinding newInitFormBinding​(org.zkoss.zk.ui.Component comp,
                                                     java.lang.String formId,
                                                     java.lang.String initExpr,
                                                     java.util.Map<java.lang.String,​java.lang.Object> bindingArgs)
        Make this extenable.
        Since:
        7.0.3
      • newLoadFormBinding

        protected LoadFormBinding newLoadFormBinding​(org.zkoss.zk.ui.Component comp,
                                                     java.lang.String formId,
                                                     java.lang.String loadExpr,
                                                     ConditionType conditionType,
                                                     java.lang.String command,
                                                     java.util.Map<java.lang.String,​java.lang.Object> bindingArgs)
        Make this extenable.
        Since:
        7.0.3
      • newSaveFormBinding

        protected SaveFormBinding newSaveFormBinding​(org.zkoss.zk.ui.Component comp,
                                                     java.lang.String formId,
                                                     java.lang.String saveExpr,
                                                     ConditionType conditionType,
                                                     java.lang.String command,
                                                     java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                                     java.lang.String validatorExpr,
                                                     java.util.Map<java.lang.String,​java.lang.Object> validatorArgs)
        Make this extenable.
        Since:
        7.0.3
      • addChildrenInitBinding

        public void addChildrenInitBinding​(org.zkoss.zk.ui.Component comp,
                                           java.lang.String initExpr,
                                           java.util.Map<java.lang.String,​java.lang.Object> initArgs,
                                           java.lang.String converterExpr,
                                           java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
        Description copied from interface: Binder
        init children of a component by an expression, it only execute once
        Specified by:
        addChildrenInitBinding in interface Binder
        Parameters:
        comp - the associated component, must not null
        initExpr - init expression, must not null
        initArgs - args key-value pairs for initial, nullable
        converterExpr - the converter expression, nullable
        converterArgs - args key-value pairs for converter, nullable
      • addChildrenLoadBindings

        public void addChildrenLoadBindings​(org.zkoss.zk.ui.Component comp,
                                            java.lang.String loadExpr,
                                            java.lang.String[] beforeCmds,
                                            java.lang.String[] afterCmds,
                                            java.util.Map<java.lang.String,​java.lang.Object> bindingArgs,
                                            java.lang.String converterExpr,
                                            java.util.Map<java.lang.String,​java.lang.Object> converterArgs)
        Description copied from interface: Binder
        Add new children-load-bindings. It creates a prompt|conditional children-load-binding depends on beforeCmds and afterCmds. If both beforeCmds and afterCmds are null or empty, it create a prompt binding.
        Specified by:
        addChildrenLoadBindings in interface Binder
        Parameters:
        comp - the associated component, must not null
        loadExpr - load expression, must not null
        beforeCmds - load before these commands, the command here is not a EL expression. nullable
        afterCmds - load after these commands, the command here is not a EL expression. nullable
        bindingArgs - args key-value pairs for this binding, nullable
        converterExpr - the converter expression, nullable
        converterArgs - args key-value pairs for converter, nullable
      • addReferenceBinding

        public void addReferenceBinding​(org.zkoss.zk.ui.Component comp,
                                        java.lang.String attr,
                                        java.lang.String loadExpr,
                                        java.util.Map<java.lang.String,​java.lang.Object> bindingArgs)
        Description copied from interface: Binder
        Add a new reference-binding. It creates an attribute as the reference of the expression in the component.
        Specified by:
        addReferenceBinding in interface Binder
        Parameters:
        comp - the associated component, must not null
        attr - the name of reference that stored in the component; ex myval, must not null
        loadExpr - load expression, must not null
        bindingArgs - args key-value pairs for this binding, nullable
      • addCommandBinding

        public void addCommandBinding​(org.zkoss.zk.ui.Component comp,
                                      java.lang.String evtnm,
                                      java.lang.String commandExpr,
                                      java.util.Map<java.lang.String,​java.lang.Object> args)
        Description copied from interface: Binder
        Add a new command binding.
        Specified by:
        addCommandBinding in interface Binder
        Parameters:
        comp - the associated component
        evtnm - the associated component event name
        commandExpr - the command expression
        args - other key-value pairs pairs for command
      • addGlobalCommandBinding

        public void addGlobalCommandBinding​(org.zkoss.zk.ui.Component comp,
                                            java.lang.String evtnm,
                                            java.lang.String commandExpr,
                                            java.util.Map<java.lang.String,​java.lang.Object> args)
        Description copied from interface: Binder
        Add a new global-command binding.
        Specified by:
        addGlobalCommandBinding in interface Binder
        Parameters:
        comp - the associated component
        evtnm - the associated component event name
        commandExpr - the command expression
        args - other key-value pairs pairs for command
      • isActivating

        public boolean isActivating()
        Description copied from interface: BinderCtrl
        check if binder is in activating state
        Specified by:
        isActivating in interface BinderCtrl
        Returns:
        true if binder is currently in activating state
        Since:
        6.0.1
      • sendCommand

        public int sendCommand​(java.lang.String command,
                               java.util.Map<java.lang.String,​java.lang.Object> args)
        Description copied from interface: Binder
        send command fired to this binder and process the command immediately
        Specified by:
        sendCommand in interface Binder
        Parameters:
        command - command name
        args - , arguments when notifying this command, it will be passed as a arguments of execution method of vm
        Returns:
        the result of the doCommand, COMMAND_SUCCESS or COMMAND_FAIL_VALIDATE (since 8.0.1)
      • fireNotifyChanges

        protected void fireNotifyChanges​(java.util.Set<Property> notifys)
      • postCommand

        public void postCommand​(java.lang.String command,
                                java.util.Map<java.lang.String,​java.lang.Object> args)
        Description copied from interface: Binder
        post command this binder, binder will queue the command, and fired later.
        Specified by:
        postCommand in interface Binder
        Parameters:
        command - command name
        args - , arguments when notifying this command, it will be passed as a arguments of execution method of vm
      • doValidate

        protected boolean doValidate​(org.zkoss.zk.ui.Component comp,
                                     java.lang.String command,
                                     org.zkoss.zk.ui.event.Event evt,
                                     BindContext ctx,
                                     java.util.Set<Property> notifys)
      • doExecute

        protected void doExecute​(org.zkoss.zk.ui.Component comp,
                                 java.lang.String command,
                                 java.util.Map<java.lang.String,​java.lang.Object> commandArgs,
                                 BindContext ctx,
                                 java.util.Set<Property> notifys)
      • doSaveBefore

        protected void doSaveBefore​(org.zkoss.zk.ui.Component comp,
                                    java.lang.String command,
                                    org.zkoss.zk.ui.event.Event evt,
                                    BindContext ctx,
                                    java.util.Set<Property> notifys)
      • doSaveAfter

        protected void doSaveAfter​(org.zkoss.zk.ui.Component comp,
                                   java.lang.String command,
                                   org.zkoss.zk.ui.event.Event evt,
                                   BindContext ctx,
                                   java.util.Set<Property> notifys)
      • doLoadBefore

        protected void doLoadBefore​(org.zkoss.zk.ui.Component comp,
                                    java.lang.String command,
                                    BindContext ctx)
      • doLoadAfter

        protected void doLoadAfter​(org.zkoss.zk.ui.Component comp,
                                   java.lang.String command,
                                   BindContext ctx)
      • removeBindings

        public void removeBindings​(java.util.Set<org.zkoss.zk.ui.Component> comps)
        Description copied from interface: Binder
        Remove all managed bindings that associated with the specified components.
        Specified by:
        removeBindings in interface Binder
      • removeBindings

        public void removeBindings​(org.zkoss.zk.ui.Component comp)
        Remove all bindings that associated with the specified component.
        Specified by:
        removeBindings in interface Binder
        Parameters:
        comp - the component
      • removeBindings

        public void removeBindings​(org.zkoss.zk.ui.Component comp,
                                   java.lang.String key)
        Remove all bindings that associated with the specified component and key (_fieldExpr|evtnm|formid).
        Specified by:
        removeBindings in interface Binder
        Parameters:
        comp - the component
        key - can be component attribute, event name, or form id
      • getLoadPromptBindings

        public java.util.List<Binding> getLoadPromptBindings​(org.zkoss.zk.ui.Component comp,
                                                             java.lang.String attr)
        Description copied from interface: BinderCtrl
        get all load prompt binding of the component and attribute
        Specified by:
        getLoadPromptBindings in interface BinderCtrl
        Parameters:
        comp - the component is relative to the bindings
        attr - the attribute is relative to the bindings
        Returns:
        the prompt-load-bindings
      • setTemplate

        public void setTemplate​(org.zkoss.zk.ui.Component comp,
                                java.lang.String attr,
                                java.lang.String templateExpr,
                                java.util.Map<java.lang.String,​java.lang.Object> templateArgs)
        Description copied from interface: Binder
        set template to a component property by an expression
        Specified by:
        setTemplate in interface Binder
        Parameters:
        comp - the associated component, must not null
        attr - the associated attribute of the component; ex label, style, must not null
        templateExpr - template expression, must not null
        templateArgs - args key-value pairs for template, nullable
      • getTracker

        public Tracker getTracker()
        Description copied from interface: BinderCtrl
        Returns associated dependency tracker of this binder.
        Specified by:
        getTracker in interface BinderCtrl
        Returns:
        associated dependency tracker of this binder.
      • loadComponent

        public void loadComponent​(org.zkoss.zk.ui.Component comp,
                                  boolean loadinit)
        Internal Use only. init and load the component
        Specified by:
        loadComponent in interface Binder
        Parameters:
        comp - the component to reload
        loadinit - true if should also load the init-binding
      • getDynamicAttrs

        public java.util.Map<java.lang.String,​java.lang.Object> getDynamicAttrs()
        Internal use only.
        Since:
        8.0.0
      • setDynamicAttrs

        public void setDynamicAttrs​(java.lang.String command,
                                    java.lang.Object value)
        Internal use only.
        Since:
        8.0.0
      • loadComponent0

        protected void loadComponent0​(org.zkoss.zk.ui.Component comp,
                                      boolean loadinit)
      • notifyChange

        public void notifyChange​(java.lang.Object base,
                                 java.lang.String attr)
        Description copied from interface: Binder
        Notify change of the property.
        Specified by:
        notifyChange in interface Binder
        Parameters:
        base - the backing bean object.
        attr - the property of the bean that change the value
      • setPhaseListener

        public void setPhaseListener​(PhaseListener listener)
        Description copied from interface: Binder
        Sets the associated phase listener to intervene the binding life cycle.
        Specified by:
        setPhaseListener in interface Binder
        Parameters:
        listener - the associated phase listener.
      • getEventQueue

        protected org.zkoss.zk.ui.event.EventQueue<org.zkoss.zk.ui.event.Event> getEventQueue()
      • addFormAssociatedSaveBinding

        public void addFormAssociatedSaveBinding​(org.zkoss.zk.ui.Component associatedComp,
                                                 java.lang.String formId,
                                                 SaveBinding saveBinding,
                                                 java.lang.String fieldName)
        Description copied from interface: BinderCtrl
        Add a association between formId and a associated save binding(save binding inside a form), the form has to exist in the parent components
        Specified by:
        addFormAssociatedSaveBinding in interface BinderCtrl
        Parameters:
        associatedComp - associated component inside a form binding
        formId - the form id
        saveBinding - the nested save binding in side a form binding
        fieldName - the associated form fieldName for the associated save binding
      • getFormAssociatedSaveBindings

        public java.util.Set<SaveBinding> getFormAssociatedSaveBindings​(org.zkoss.zk.ui.Component comp)
        Description copied from interface: BinderCtrl
        Get associated save bindings of a form in a component
        Specified by:
        getFormAssociatedSaveBindings in interface BinderCtrl
        Parameters:
        comp - the component that contains the form
        Returns:
        all associated save binding in the form
      • hasValidator

        public boolean hasValidator​(org.zkoss.zk.ui.Component comp,
                                    java.lang.String attr)
        Description copied from interface: BinderCtrl
        is there a validator on the attribute of component
        Specified by:
        hasValidator in interface BinderCtrl
        Parameters:
        comp - the component to check
        attr - the attribute to check
        Returns:
        true if there is a validator
      • getView

        public org.zkoss.zk.ui.Component getView()
        Description copied from interface: Binder
        Returns associated root component of this binder.
        Specified by:
        getView in interface Binder
        Returns:
        associated root component of this binder.
      • getQueueName

        public java.lang.String getQueueName()
        Description copied from interface: BinderCtrl
        Returns the queue name of this binder
        Specified by:
        getQueueName in interface BinderCtrl
      • getQueueScope

        public java.lang.String getQueueScope()
        Description copied from interface: BinderCtrl
        Returns the queue scope of this binder
        Specified by:
        getQueueScope in interface BinderCtrl
      • getMatchMediaValue

        public java.util.Map<java.lang.String,​java.lang.reflect.Method> getMatchMediaValue()
        Description copied from interface: BinderCtrl
        Returns an unmodifiable Map containing all the MatchMedia annotation values of this binder. If there's no MatchMedia annotation, it returns an empty Map.
        Specified by:
        getMatchMediaValue in interface BinderCtrl
      • addSaveFormFieldName

        public void addSaveFormFieldName​(Form form,
                                         java.lang.String fieldName)
        Description copied from interface: BinderCtrl
        Adds a field name for saving with the given Form.
        Specified by:
        addSaveFormFieldName in interface BinderCtrl
        fieldName - field name to be saved into.
      • addSaveFormFieldName

        public void addSaveFormFieldName​(Form form,
                                         java.util.Set<java.lang.String> fieldNames)
        Description copied from interface: BinderCtrl
        Adds all field names for saving with the given Form.
        Specified by:
        addSaveFormFieldName in interface BinderCtrl
        fieldNames - field name to be saved into.
      • removeSaveFormFieldNames

        public java.util.Set<java.lang.String> removeSaveFormFieldNames​(Form self)
        Description copied from interface: BinderCtrl
        Remove all field names for saving with the given Form.
        Specified by:
        removeSaveFormFieldNames in interface BinderCtrl
      • getSaveFormFieldNames

        public java.util.Set<java.lang.String> getSaveFormFieldNames​(Form form)
        Description copied from interface: BinderCtrl
        Returns all field names for saving with the given Form.
        Specified by:
        getSaveFormFieldNames in interface BinderCtrl
      • initQueue

        public void initQueue()
        Internal use only. Check and init queue
        Specified by:
        initQueue in interface BinderCtrl
      • initActivator

        public void initActivator()
        Internal use only. Check and init Activator
        Specified by:
        initActivator in interface BinderCtrl