Class ClientBehaviorRenderer



  • public abstract class ClientBehaviorRenderer
    extends java.lang.Object

    A ClientBehaviorRenderer produces the client-side script that implements a ClientBehavior's client-side logic. It can also enqueue server-side BehaviorEvents that may be processed later by event listeners that have registered an interest.

    Individual ClientBehaviorRenderer instances will be instantiated as requested during the rendering process, and will remain in existence for the remainder of the lifetime of a web application. Because each instance may be invoked from more than one request processing thread simultaneously, they MUST be programmed in a thread-safe manner.

    Since:
    2.0
    • Constructor Detail

      • ClientBehaviorRenderer

        public ClientBehaviorRenderer​()
    • Method Detail

      • getScript

        public java.lang.String getScript​(ClientBehaviorContext behaviorContext,
                                          ClientBehavior behavior)

        Return the script that implements this ClientBehavior's client-side logic. The default implementation returns null.

        ClientBehaviorRenderer.getScript() implementations are allowed to return null to indicate that no script is required for this particular getScript() call. For example, a ClientBehaviorRenderer implementation may return null if the associated ClientBehavior is disabled.

        Parameters:
        behaviorContext - the ClientBehaviorContext that provides properties that might influence this getScript() call. Note that ClientBehaviorContext instances are short-lived objects that are only valid for the duration of the call to getScript(). ClientBehaviorRenderer implementations must not hold onto references to ClientBehaviorContexts.
        behavior - the ClientBehavior instance that generates script.
        Returns:
        script that provides the client-side behavior, or null if no script is required.
        Since:
        2.0
      • decode

        public void decode​(FacesContext context,
                           UIComponent component,
                           ClientBehavior behavior)

        Decode any new state of this ClientBehavior from the request contained in the specified FacesContext.

        During decoding, events may be enqueued for later processing (by event listeners who have registered an interest), by calling queueEvent().

        Parameters:
        context - FacesContext for the request we are processing
        component - UIComponent the component associated with this Behavior
        behavior - ClientBehavior the behavior instance
        Throws:
        java.lang.NullPointerException - if context, component behavior is null
        Since:
        2.0