javax.faces.context

## Class PartialViewContext

- java.lang.Object
- - javax.faces.context.PartialViewContext

- Direct Known Subclasses:
    PartialViewContextWrapper

      public abstract class PartialViewContext
      extends Object

  PartialViewContext contains methods and properties that pertain to partial request processing and partial response rendering on a view.

  The `PartialViewContext` instance is used to determine if the current request indicates the requirement to perform `partial processing` and/or `partial rendering`. Partial processing is the processing of selected components through the `execute` portion of the request processing lifecycle. Partial rendering is the rendering of specified components in the `Render Response Phase` of the request processing lifecycle.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `ALL_PARTIAL_PHASE_CLIENT_IDS` The value that when used with `PARTIAL_EXECUTE_PARAM_NAME` or `PARTIAL_RENDER_PARAM_NAME` indicates these phases must be skipped.
    `static String` | `PARTIAL_EXECUTE_PARAM_NAME` The request parameter name whose request parameter value is a `Collection` of client identifiers identifying the components that must be processed during the Apply Request Values, Process Validations, and Update Model Values phases of the request processing lifecycle.
    `static String` | `PARTIAL_RENDER_PARAM_NAME` The request parameter name whose request parameter value is a `Collection` of client identifiers identifying the components that must be processed during the Render Response phase of the request processing lifecycle.
    `static String` | `RESET_VALUES_PARAM_NAME` If the request parameter named by the value of this constant has a parameter value of `true`, the implementation must return `true` from `isResetValues()`.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PartialViewContext()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract Collection<String>` | `getExecuteIds()` Return a `Collection` of client identifiers from the current request with the request parameter name `PARTIAL_EXECUTE_PARAM_NAME`.
    `abstract PartialResponseWriter` | `getPartialResponseWriter()` Return the `ResponseWriter` to which components should direct their output for partial view rendering.
    `abstract Collection<String>` | `getRenderIds()` Return a `Collection` of client identifiers from the current request with the request parameter name `PARTIAL_RENDER_PARAM_NAME`.
    `abstract boolean` | `isAjaxRequest()` Return `true` if the request header `Faces-Request` is present with the value `partial/ajax`.
    `abstract boolean` | `isExecuteAll()` Return `true` if `isAjaxRequest()` returns `true` and `PARTIAL_EXECUTE_PARAM_NAME` is present in the current request with the value `ALL_PARTIAL_PHASE_CLIENT_IDS`.
    `abstract boolean` | `isPartialRequest()` Return `true` `isAjaxRequest()` returns `true` or if the request header `Faces-Request` is present with the value `partial/process`.
    `abstract boolean` | `isRenderAll()` Return `true` if `isAjaxRequest()` returns `true` and `PARTIAL_RENDER_PARAM_NAME` is present in the current request with the value `ALL_PARTIAL_PHASE_CLIENT_IDS`.
    `boolean` | `isResetValues()` Return `true` if the incoming request has a parameter named by the value of `RESET_VALUES_PARAM_NAME` and that value is `true`.
    `abstract void` | `processPartial(PhaseId phaseId)` Perform lifecycle processing on components during the indicated `phaseId`.
    `abstract void` | `release()` Release any resources associated with this `PartialViewContext` instance.
    `abstract void` | `setPartialRequest(boolean isPartialRequest)` Dynamically indicate that this is a partial request.
    `abstract void` | `setRenderAll(boolean renderAll)` Indicate the entire view must be rendered if `renderAll` is `true`.

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

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

- - ### Field Detail

    - #### PARTIAL_RENDER_PARAM_NAME

          public static final String PARTIAL_RENDER_PARAM_NAME

      The request parameter name whose request parameter value is a `Collection` of client identifiers identifying the components that must be processed during the Render Response phase of the request processing lifecycle.

      Since:
        2.0
      See Also:
        Constant Field Values

    - #### PARTIAL_EXECUTE_PARAM_NAME

          public static final String PARTIAL_EXECUTE_PARAM_NAME

      The request parameter name whose request parameter value is a `Collection` of client identifiers identifying the components that must be processed during the Apply Request Values, Process Validations, and Update Model Values phases of the request processing lifecycle.

      Since:
        2.0
      See Also:
        Constant Field Values

    - #### RESET_VALUES_PARAM_NAME

          public static final String RESET_VALUES_PARAM_NAME

      If the request parameter named by the value of this constant has a parameter value of `true`, the implementation must return `true` from `isResetValues()`.

      Since:
        2.2
      See Also:
        Constant Field Values

    - #### ALL_PARTIAL_PHASE_CLIENT_IDS

          public static final String ALL_PARTIAL_PHASE_CLIENT_IDS

      The value that when used with `PARTIAL_EXECUTE_PARAM_NAME` or `PARTIAL_RENDER_PARAM_NAME` indicates these phases must be skipped.

      Since:
        2.0
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### PartialViewContext

          public PartialViewContext()

  - ### Method Detail

    - #### getExecuteIds

          public abstract Collection<String> getExecuteIds()

      Return a `Collection` of client identifiers from the current request with the request parameter name `PARTIAL_EXECUTE_PARAM_NAME`. If there is no such request parameter, return an empty `Collection`. These client identifiers are used to identify components that will be processed during the `execute` phase of the request processing lifecycle. The returned `Collection` is mutable.

      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### getRenderIds

          public abstract Collection<String> getRenderIds()

      Return a `Collection` of client identifiers from the current request with the request parameter name `PARTIAL_RENDER_PARAM_NAME`. If there is no such request parameter, return an empty `Collection`. These client identifiers are used to identify components that will be processed during the `render` phase of the request processing lifecycle. The returned `Collection` is mutable.

      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### getPartialResponseWriter

          public abstract PartialResponseWriter getPartialResponseWriter()

      Return the `ResponseWriter` to which components should direct their output for partial view rendering. Within a given response, components can use either the ResponseStream or the ResponseWriter, but not both.

      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### isAjaxRequest

          public abstract boolean isAjaxRequest()

      Return `true` if the request header `Faces-Request` is present with the value `partial/ajax`. Otherwise, return `false`.

      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### isPartialRequest

          public abstract boolean isPartialRequest()

      Return `true` `isAjaxRequest()` returns `true` or if the request header `Faces-Request` is present with the value `partial/process`. Otherwise, return `false`.

      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### isExecuteAll

          public abstract boolean isExecuteAll()

      Return `true` if `isAjaxRequest()` returns `true` and `PARTIAL_EXECUTE_PARAM_NAME` is present in the current request with the value `ALL_PARTIAL_PHASE_CLIENT_IDS`.

      Otherwise, return `false`.
      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### isRenderAll

          public abstract boolean isRenderAll()

      Return `true` if `isAjaxRequest()` returns `true` and `PARTIAL_RENDER_PARAM_NAME` is present in the current request with the value `ALL_PARTIAL_PHASE_CLIENT_IDS`.

      Otherwise, return `false`.
      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### isResetValues

          public boolean isResetValues()

      Return `true` if the incoming request has a parameter named by the value of `RESET_VALUES_PARAM_NAME` and that value is `true`. To preserve backward compatibility with custom implementations that may have extended from an earlier version of this class, an implementation is provided that returns `false`. A compliant implementation must override this method to take the specified action.

      Since:
        2.2

    - #### setRenderAll

          public abstract void setRenderAll(boolean renderAll)

      Indicate the entire view must be rendered if `renderAll` is `true`.

      Parameters:
        `renderAll` - the value `true` indicates the entire view must be rendered.
      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### setPartialRequest

          public abstract void setPartialRequest(boolean isPartialRequest)

      Dynamically indicate that this is a partial request.

      Parameters:
        `isPartialRequest` - the value `true` indicates this is a partial request.
      Throws:
        `IllegalStateException` - if this method is called after this instance has been released
      Since:
        2.0

    - #### release

          public abstract void release()

      Release any resources associated with this `PartialViewContext` instance.

      Throws:
        `IllegalStateException` - if this method is called after this instance has been released

    - #### processPartial

          public abstract void processPartial(PhaseId phaseId)

      Perform lifecycle processing on components during the indicated `phaseId`. Only those components with identifiers existing in the `Collection` returned from `getExecuteIds()` and `getRenderIds()` will be processed.

      Parameters:
        `phaseId` - the `PhaseId` that indicates the lifecycle phase the components will be processed in.

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