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 BehaviorEvent
s 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.
Constructor and Description |
---|
ClientBehaviorRenderer() |
Modifier and Type | Method and Description |
---|---|
void |
decode(FacesContext context,
UIComponent component,
ClientBehavior behavior)
Decode any new state of this |
java.lang.String |
getScript(ClientBehaviorContext behaviorContext,
ClientBehavior behavior)
Return the script that implements this ClientBehavior's client-side logic. |
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.
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.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()
.
context
- FacesContext
for the request we are processingcomponent
- UIComponent
the component associated with this
Behavior
behavior
- ClientBehavior
the behavior instancejava.lang.NullPointerException
- if context
,
component
behavior
is null