javax.faces.component.behavior

## Class ClientBehaviorBase

- java.lang.Object
- - javax.faces.component.behavior.BehaviorBase
  - - javax.faces.component.behavior.ClientBehaviorBase

- All Implemented Interfaces:
    Behavior, ClientBehavior, PartialStateHolder, StateHolder
  Direct Known Subclasses:
    AjaxBehavior

      public class ClientBehaviorBase
      extends BehaviorBase
      implements ClientBehavior

  ClientBehaviorBase is a convenience base class that implements the default concrete behavior of all methods defined by `ClientBehavior`.

  Subclasses should either override getRendererType() to identify the `ClientBehaviorRenderer` to delegate to, or they should override `getScript()` to locally generate the desired Behavior script, and `decode()`.

  Since:
    2.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ClientBehaviorBase()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `decode(FacesContext context, UIComponent component)` Default implementation of of `ClientBehavior.decode(javax.faces.context.FacesContext, javax.faces.component.UIComponent)`.
    `Set<ClientBehaviorHint>` | `getHints()` Default implementation of `ClientBehavior.getHints()`.
    `protected ClientBehaviorRenderer` | `getRenderer(FacesContext context)` Convenience method to return the `ClientBehaviorRenderer` instance associated with this `ClientBehavior`, if any; otherwise, return `null`.
    `String` | `getRendererType()` Returns the renderer type of the `ClientBehaviorRenderer` to use for the behavior.
    `String` | `getScript(ClientBehaviorContext behaviorContext)` Default implementation of of `ClientBehavior.getScript(javax.faces.component.behavior.ClientBehaviorContext)`.

    - ### Methods inherited from class javax.faces.component.behavior.BehaviorBase

      `addBehaviorListener, broadcast, clearInitialState, initialStateMarked, isTransient, markInitialState, removeBehaviorListener, restoreState, saveState, setTransient`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface javax.faces.component.behavior.Behavior

      `broadcast`

- - ### Constructor Detail

    - #### ClientBehaviorBase

          public ClientBehaviorBase()

  - ### Method Detail

    - #### getScript

          public String getScript(ClientBehaviorContext behaviorContext)

      Default implementation of of `ClientBehavior.getScript(javax.faces.component.behavior.ClientBehaviorContext)`. If a `ClientBehaviorRenderer` is available for the specified behavior renderer type, this method delegates to the `ClientBehaviorRenderer.getScript(javax.faces.component.behavior.ClientBehaviorContext, javax.faces.component.behavior.ClientBehavior)` method. Otherwise, this method returns null.

      Specified by:
        `getScript` in interface `ClientBehavior`
      Parameters:
        `behaviorContext` - the `ClientBehaviorContext`
      Returns:
        the script provided by the associated ClientBehaviorRenderer, or null if no ClientBehaviorRenderer is available.
      Throws:
        `NullPointerException` - if `behaviorContext` is `null`
      Since:
        2.0

    - #### decode

          public void decode(FacesContext context,
                    UIComponent component)

      Default implementation of of `ClientBehavior.decode(javax.faces.context.FacesContext, javax.faces.component.UIComponent)`. If a `ClientBehaviorRenderer` is available for the specified behavior renderer type, this method delegates to the ClientBehaviorRenderer's decode() method. Otherwise, no decoding is performed.

      Specified by:
        `decode` in interface `ClientBehavior`
      Parameters:
        `context` - `FacesContext` for the request we are processing
        `component` - `UIComponent` the component associated with this `ClientBehavior`
      Throws:
        `NullPointerException` - if `context` or `component`is `null`.``
      Since:
        2.0

    - #### getRendererType

          public String getRendererType()

      Returns the renderer type of the `ClientBehaviorRenderer` to use for the behavior. The default implementation returns null. Subclasses should either override this method to return a string that identifies the type of `ClientBehaviorRenderer` to use, or should override `getScript(javax.faces.component.behavior.ClientBehaviorContext)` and perform script rendering locally in the `ClientBehavior` implementation.

      Returns:
        the default renderer type, which is null.
      Since:
        2.0

    - #### getHints

          public Set<ClientBehaviorHint> getHints()

      Default implementation of `ClientBehavior.getHints()`. By default, no hints are specified, and this method returns an empty, umodifiable set.

      Specified by:
        `getHints` in interface `ClientBehavior`
      Returns:
        an empty, unmodifiable set of `ClientBehaviorHint`s.
      Since:
        2.0

    - #### getRenderer

          protected ClientBehaviorRenderer getRenderer(FacesContext context)

      Convenience method to return the `ClientBehaviorRenderer` instance associated with this `ClientBehavior`, if any; otherwise, return `null`.

      Parameters:
        `context` - `FacesContext` for the request we are processing
      Returns:
        `ClientBehaviorRenderer` instance from the current `RenderKit` or null.
      Throws:
        `NullPointerException` - if `context` is null.
      Since:
        2.0

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.