Package org.apache.tapestry5.services.ajax

## Interface AjaxResponseRenderer

- All Known Implementing Classes:
    `AjaxResponseRendererImpl`

      public interface AjaxResponseRenderer

  Manages the rendering of a partial page render as part of an Ajax response. This replaces the `MultiZoneUpdate` introduced in Tapestry 5.1. Much of the API is used to queue behaviors that take effect when partial markup rendering takes place. The implementation of this class provides `PartialMarkupRendererFilter` to the `PageRenderQueue`.
  Since:
    5.3

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `AjaxResponseRenderer` | `addCallback​(Runnable callback)` | Queues a callback to execute during the partial markup render.
    `AjaxResponseRenderer` | `addCallback​(JavaScriptCallback callback)` | Queues a callback to execute during the partial markup render.
    `AjaxResponseRenderer` | `addCallback​(JSONCallback callback)` | Queues a callback to execute during the partial markup render.
    `AjaxResponseRenderer` | `addFilter​(PartialMarkupRendererFilter filter)` | Adds a rendering filter.
    `AjaxResponseRenderer` | `addRender​(String clientId, Object renderer)` | Queues the renderer to render markup for the client-side element with the provided id.
    `AjaxResponseRenderer` | `addRender​(ClientBodyElement zone)` | Queues an update to the zone, using the zone's body as the new content.
    `void` | `setupPartial​(String pageName)` | Initializes partial response rendering by identifying the page "responsible" for the response.

- - ### Method Detail

    - #### addRender

          AjaxResponseRenderer addRender​(String clientId,
                                         Object renderer)

      Queues the renderer to render markup for the client-side element with the provided id.
      Parameters:
        `clientId` - client id of zone to update with the content from the renderer
        `renderer` - a `Block`, `Component` or other object that can be coerced to `RenderCommand`.
      Returns:
        the renderer, for a fluid interface

    - #### addRender

          AjaxResponseRenderer addRender​(ClientBodyElement zone)

      Queues an update to the zone, using the zone's body as the new content.
      Parameters:
        `zone` - the element that contains both a client id and a body (this is primarily used to represent a `Zone` component).
      Returns:
        this renderer, for a fluid interface

    - #### addCallback

          AjaxResponseRenderer addCallback​(JavaScriptCallback callback)

      Queues a callback to execute during the partial markup render. The callback is added as a filter; the callback is invoked before the rest of the rendering pipeline is invoked.
      Parameters:
        `callback` - object to be invoked
      Returns:
        this renderer, for a fluid interface

    - #### addCallback

          AjaxResponseRenderer addCallback​(Runnable callback)

      Queues a callback to execute during the partial markup render. . The callback is added as a filter; the callback is invoked before the rest of the rendering pipeline is invoked.
      Parameters:
        `callback` - object to be invoked
      Returns:
        this renderer, for a fluid interface

    - #### addFilter

          AjaxResponseRenderer addFilter​(PartialMarkupRendererFilter filter)

      Adds a rendering filter. Dynamically added filters are only in place during the handling of the current request, and come after any filters contributed to the `PartialMarkupRenderer` service.
      Returns:
        this renderer, for a fluid interface

    - #### addCallback

          AjaxResponseRenderer addCallback​(JSONCallback callback)

      Queues a callback to execute during the partial markup render. The callback is added as a filter; the callback is invoked before the rest of the rendering pipeline is invoked.
      Parameters:
        `callback` - object o be invoked
      Returns:
        this renderer, for a fluid interface

    - #### setupPartial

          void setupPartial​(String pageName)

      Initializes partial response rendering by identifying the page "responsible" for the response. This is mostly used for selecting the character set for the response.
      Parameters:
        `pageName` - identifies page to render
      Since:
        5.4