public abstract class VisitContext
extends java.lang.Object
A context object that is used to hold state relating to performing a component tree visit.
Component tree visits are initiated by calling UIComponent.visitTree(javax.faces.component.visit.VisitContext, javax.faces.component.visit.VisitCallback)
, at which point both a
VisitContext
and a VisitCallback
must be provided.
UIComponent.visitTree()
,
VisitCallback
Modifier and Type | Field and Description |
---|---|
static java.util.Collection<java.lang.String> |
ALL_IDS
This unmodifiable Collection is
returned by |
Constructor and Description |
---|
VisitContext() |
Modifier and Type | Method and Description |
---|---|
static VisitContext |
createVisitContext(FacesContext context)
Creates a VisitContext instance for use with
UIComponent.visitTree() . |
static VisitContext |
createVisitContext(FacesContext context,
java.util.Collection<java.lang.String> ids,
java.util.Set<VisitHint> hints)
Returns a VisitContext instance that is initialized with the
specified ids and hintsfor use with
UIComponent.visitTree(javax.faces.component.visit.VisitContext, javax.faces.component.visit.VisitCallback) . |
abstract FacesContext |
getFacesContext()
Returns the FacesContext for the current request. |
abstract java.util.Set<VisitHint> |
getHints()
Returns hints that influence the behavior of the tree visit.
|
abstract java.util.Collection<java.lang.String> |
getIdsToVisit()
Returns the ids of the components to visit. |
abstract java.util.Collection<java.lang.String> |
getSubtreeIdsToVisit(UIComponent component)
Given a |
abstract VisitResult |
invokeVisitCallback(UIComponent component,
VisitCallback callback)
Called by
UIComponent.visitTree()
to visit a single component. |
public static final java.util.Collection<java.lang.String> ALL_IDS
This unmodifiable Collection is
returned by getIdsToVisit()
and
getSubtreeIdsToVisit()
in cases where all ids should
be visited.
To simplify logic for
visitTree()
implementations, this Collection always
returns false
for isEmpty
. All other
methods throw UnsupportedOperationException
.
public abstract FacesContext getFacesContext()
Returns the FacesContext for the current request.
public abstract java.util.Collection<java.lang.String> getIdsToVisit()
Returns the ids of the components to visit.
In the case of a full tree visit, this method returns the ALL_IDS collection. Otherwise, if a partial visit is beign performed, returns a modifiable collection containing the client ids of the components that should be visited.
public abstract java.util.Collection<java.lang.String> getSubtreeIdsToVisit(UIComponent component)
Given a NamingContainer
component, returns the
client ids of any components underneath the NamingContainer that
should be visited.
This method is called by NamingContainer visitTree() implementations to determine whether the NamingContainer contains components to be visited. In the case where no such components exist, the NamingContainer can short-circuit the tree visit and avoid descending into child subtrees.
In addition, iterating components such as UIData may be able to use the returned ids to determine which iterated states (ie. rows) need to be visited. This allows the visit traversal to be contstrained such only those rows that contain visit targets need to be traversed.
component
- a NamingContainer componentVisitContext.ALL_IDS
collection.java.lang.IllegalArgumentException
- if component
is not
an instance of NamingContainerpublic abstract VisitResult invokeVisitCallback(UIComponent component, VisitCallback callback)
Called by UIComponent.visitTree()
to visit a single component.
component
- the component to visitcallback
- the VisitCallback to callpublic abstract java.util.Set<VisitHint> getHints()
Returns hints that influence the behavior of the tree visit.
Interested parties, such as
UIComponent.visitTree()
implementations,
may check to see whether a particular hint is present by calling
VisitContext.getHints().contains()
, passing in one of the
hints defined by VisitHint
.
public static VisitContext createVisitContext(FacesContext context, java.util.Collection<java.lang.String> ids, java.util.Set<VisitHint> hints)
Returns a VisitContext instance that is initialized with the
specified ids and hintsfor use with UIComponent.visitTree(javax.faces.component.visit.VisitContext, javax.faces.component.visit.VisitCallback)
.
context
- the FacesContext for the current requestids
- the client ids of the components to visit. If null,
all components will be visited.hints
- the VisitHints to apply to the visit. If
null
, no hints are applied.public static VisitContext createVisitContext(FacesContext context)
Creates a VisitContext instance for use with
UIComponent.visitTree()
.
This method can be used to obtain a VisitContext instance
when all components should be visited with the default
visit hints.
context
- the FacesContext for the current request