|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjavax.faces.component.UIComponent
org.apache.myfaces.trinidad.component.UIXComponent
public abstract class UIXComponent
Pure abstract base class for all UIX components.
Field Summary |
---|
Fields inherited from class javax.faces.component.UIComponent |
---|
bindings |
Constructor Summary | |
---|---|
UIXComponent()
|
Method Summary | ||
---|---|---|
abstract void |
addAttributeChangeListener(AttributeChangeListener acl)
Adds an AttributeChangeListener. |
|
abstract javax.el.MethodExpression |
getAttributeChangeListener()
Gets the method binding to an AttributeChangeListener. |
|
abstract AttributeChangeListener[] |
getAttributeChangeListeners()
Gets the registered AttributeChangeListeners. |
|
abstract java.lang.String |
getContainerClientId(javax.faces.context.FacesContext context,
javax.faces.component.UIComponent child)
Provides additional context (the target child component for which the container client ID is requested) to a naming container for constructing a client ID. |
|
abstract FacesBean |
getFacesBean()
Returns the FacesBean used for storing the component's state. |
|
protected boolean |
isVisitable(VisitContext visitContext)
Called by UIXComponent.visitTree() to determine
whether this component is "visitable" - ie. whether this component
satisfies the org.apache.myfaces.trinidad.component.visit.VisitHints returned by
VisitContext.getHints() . |
|
abstract void |
markInitialState()
|
|
VisitResult |
partialEncodeVisit(VisitContext visitContext,
PartialPageContext partialContext,
VisitCallback callback)
Called when visiting the component during optimized partial page encoding so that the component can modify what is actually encoded. |
|
static
|
processFlattenedChildren(javax.faces.context.FacesContext context,
ComponentProcessingContext cpContext,
ComponentProcessor<S> childProcessor,
java.lang.Iterable<javax.faces.component.UIComponent> children,
S callbackContext)
Helper function called by FlattenedComponents to iterate over a flattened view of their children, potentially themselves FlattenedComponents, invoking the childProcessor
with its callbackContext on each renderable instance. |
|
static
|
processFlattenedChildren(javax.faces.context.FacesContext context,
ComponentProcessingContext cpContext,
ComponentProcessor<S> childProcessor,
javax.faces.component.UIComponent child,
S callbackContext)
Helper function called by FlattenedComponent to iterate over a flattened view of a group of potentially FlattenedComponent instances rooted at a single child of the FlattenedComponent, invoking the childProcessor with its
callbackContext on each renderable instance. |
|
static
|
processFlattenedChildren(javax.faces.context.FacesContext context,
ComponentProcessor<S> childProcessor,
java.lang.Iterable<javax.faces.component.UIComponent> children,
S callbackContext)
Helper function called by Renderers to iterate over a flattened view of the children, potentially containing FlattenedComponents, of the component the Renderer is encoding, invoking the childProcessor with its
callbackContext on each renderable instance. |
|
static
|
processFlattenedChildren(javax.faces.context.FacesContext context,
ComponentProcessor<S> childProcessor,
javax.faces.component.UIComponent child,
S callbackContext)
Helper function called by Renderers to iterate over a flattened view of a group of potentially FlattenedComponent instances rooted at a single child of the component that the Renderer is encoding, invoking the childProcessor with its
callbackContext on each renderable instance. |
|
abstract void |
removeAttributeChangeListener(AttributeChangeListener acl)
Removes an AttributeChangeListener. |
|
abstract void |
setAttributeChangeListener(javax.el.MethodExpression me)
Sets a method binding to an AttributeChangeListener. |
|
protected void |
setUpEncodingContext(javax.faces.context.FacesContext context,
RenderingContext rc)
Sets up the context necessary to encode the component. |
|
protected void |
setupVisitingContext(javax.faces.context.FacesContext context)
Sets up the context necessary to visit or invoke the component for all phases. |
|
protected void |
tearDownEncodingContext(javax.faces.context.FacesContext context,
RenderingContext rc)
Tears down the context created in order to encode the component The default implementation delegates to CoreRenderer.tearDownEncodingContext and then calls
tearDownVisitingContext
A subclass should only override this method if it overrode
setUpEncodingContext as well
It is guaranteed that tearDownEncodingContext will be called only after
setUpEncodingContext has been called for this component |
|
protected void |
tearDownVisitingContext(javax.faces.context.FacesContext context)
Tears down context created in order to visit or invoke the component for all phases. |
|
static boolean |
visitTree(VisitContext visitContext,
javax.faces.component.UIComponent component,
VisitCallback callback)
Perform a tree visit starting at the specified node in the tree. |
|
boolean |
visitTree(VisitContext visitContext,
VisitCallback callback)
Perform a tree visit starting at this node in the tree. |
Methods inherited from class javax.faces.component.UIComponent |
---|
addFacesListener, broadcast, decode, encodeAll, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientId, getContainerClientId, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getFamily, getId, getParent, getRenderer, getRendererType, getRendersChildren, getValueBinding, getValueExpression, invokeOnComponent, isRendered, processDecodes, processRestoreState, processSaveState, processUpdates, processValidators, queueEvent, removeFacesListener, setId, setParent, setRendered, setRendererType, setValueBinding, setValueExpression |
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.StateHolder |
---|
isTransient, restoreState, saveState, setTransient |
Constructor Detail |
---|
public UIXComponent()
Method Detail |
---|
public static <S> boolean processFlattenedChildren(javax.faces.context.FacesContext context, ComponentProcessor<S> childProcessor, javax.faces.component.UIComponent child, S callbackContext) throws java.io.IOException
childProcessor
with its
callbackContext
on each renderable instance.
If the child is a FlattenedComponent, the childProcessor
will
be called on each of that FlattenedComponent's children, recursing if those children are
themselves FlattenedComponents, otherwise, the childProcessor
will be called on
the child itself.
This method is typically used to flatten the contents of a facet on the FlattenedComponent to be encoded. If the Renderer accidentally passes in the component to be encoded instead of one of its children, the result will almost certainly be an infinite recursion and stack overflow.
java.io.IOException
processFlattenedChildren(FacesContext, ComponentProcessor, Iterable, Object)
,
processFlattenedChildren(FacesContext, ComponentProcessingContext, ComponentProcessor, UIComponent, Object)
,
processFlattenedChildren(FacesContext, ComponentProcessingContext, ComponentProcessor, Iterable, Object)
,
FlattenedComponent
public static <S> boolean processFlattenedChildren(javax.faces.context.FacesContext context, ComponentProcessingContext cpContext, ComponentProcessor<S> childProcessor, javax.faces.component.UIComponent child, S callbackContext) throws java.io.IOException
childProcessor
with its
callbackContext
on each renderable instance.
If the child is a FlattenedComponent, the childProcessor
will
be called on each of that FlattenedComponent's children, recursing if those children are
themselves FlattenedComponents, otherwise, the childProcessor
will be called on
the child itself.
This method is typically used to flatten the contents of a facet of the FlattenedComponent. If the FlattenedComponent accidentally passes in itself instead of one of its children, the result will almost certainly be an infinite recursion and stack overflow.
java.io.IOException
processFlattenedChildren(FacesContext, ComponentProcessor, UIComponent, Object)
,
processFlattenedChildren(FacesContext, ComponentProcessor, Iterable, Object)
,
processFlattenedChildren(FacesContext, ComponentProcessingContext, ComponentProcessor, Iterable, Object)
,
FlattenedComponent
public static <S> boolean processFlattenedChildren(javax.faces.context.FacesContext context, ComponentProcessor<S> childProcessor, java.lang.Iterable<javax.faces.component.UIComponent> children, S callbackContext) throws java.io.IOException
childProcessor
with its
callbackContext
on each renderable instance.
For each FlattenedComponent child, the childProcessor
will
be called on each of that FlattenedComponent's children, recursing if those children are
themselves FlattenedComponents, otherwise, the childProcessor
will be called on
the child itself.
This method is typically used to flatten the children of the FlattenedComponent to be encoded.
java.io.IOException
processFlattenedChildren(FacesContext, ComponentProcessor, UIComponent, Object)
,
processFlattenedChildren(FacesContext, ComponentProcessingContext, ComponentProcessor, UIComponent, Object)
,
processFlattenedChildren(FacesContext, ComponentProcessingContext, ComponentProcessor, Iterable, Object)
,
FlattenedComponent
public static <S> boolean processFlattenedChildren(javax.faces.context.FacesContext context, ComponentProcessingContext cpContext, ComponentProcessor<S> childProcessor, java.lang.Iterable<javax.faces.component.UIComponent> children, S callbackContext) throws java.io.IOException
childProcessor
with its callbackContext
on each renderable instance.
For each FlattenedComponent child, the childProcessor
will
be called on each of that FlattenedComponent's children, recursing if those children are
themselves FlattenedComponents, otherwise, the childProcessor
will be called on
the child itself.
java.io.IOException
processFlattenedChildren(FacesContext, ComponentProcessor, UIComponent, Object)
,
processFlattenedChildren(FacesContext, ComponentProcessor, Iterable, Object)
,
processFlattenedChildren(FacesContext, ComponentProcessingContext, ComponentProcessor, UIComponent, Object)
,
FlattenedComponent
public boolean visitTree(VisitContext visitContext, VisitCallback callback)
Perform a tree visit starting at this node in the tree.
UIXComponent.visitTree() implementations do not invoke the
VisitCallback
directly, but instead call
VisitContext.invokeVisitCallback()
to invoke the
callback. This allows VisitContext
implementations
to provide optimized tree traversals, for example by only
calling the VisitCallback
for a subset of components.
visitContext
- the VisitContext
for this visitcallback
- the VisitCallback
instance
whose visit
method will be called
for each node visited.
true
to indicate that the tree visit is complete (eg. all components
that need to be visited have been visited). This results in
the tree visit being short-circuited such that no more components
are visited.VisitContext.invokeVisitCallback()
public static boolean visitTree(VisitContext visitContext, javax.faces.component.UIComponent component, VisitCallback callback)
Perform a tree visit starting at the specified node in the tree.
UIXComponent.visitTree() implementations do not invoke the
VisitCallback
directly, but instead call
VisitContext.invokeVisitCallback()
to invoke the
callback. This allows VisitContext
implementations
to provide optimized tree traversals, for example by only
calling the VisitCallback
for a subset of components.
visitContext
- the VisitContext
for this visitcomponent
- the UIComponent
to start the visit fromcallback
- the VisitCallback
instance
whose visit
method will be called
for each node visited.
true
to indicate that the tree visit is complete (eg. all components
that need to be visited have been visited). This results in
the tree visit being short-circuited such that no more components
are visited.VisitContext.invokeVisitCallback()
protected boolean isVisitable(VisitContext visitContext)
Called by
UIXComponent.visitTree()
to determine
whether this component is "visitable" - ie. whether this component
satisfies the org.apache.myfaces.trinidad.component.visit.VisitHints
returned by
VisitContext.getHints()
.
If this component is not visitable (ie. if this method returns false), the tree visited is short-circuited such that neither the component nor any of its descendents will be visited>
Custom treeVisit()
implementations may call this method
to determine whether the component is visitable before performing
any visit-related processing.
public VisitResult partialEncodeVisit(VisitContext visitContext, PartialPageContext partialContext, VisitCallback callback)
Called when visiting the component during optimized partial page encoding so that the component can modify what is actually encoded. For example tab controls often render the tabs for the ShowDetailItems in the tab bar before delegating to the disclosed ShowDetailItem to render the tab content. As a result, the tab control needs to encode its tab bar if any of its ShowDetailItems are partial targets so that the tab labels, for example, are up-to-date.
The default implementation delegates to the CoreRenderer if this component has one, otherwise it calls the VisitCallback and returns its result if this UIXComponent is a partial target of the current encoding.
visitContext
- VisitContext to pass to the VisitCallbackpartialContext
- PartialPageContext for the current partial encodingcallback
- VisitCallback to call if this component is a partial target
protected void setupVisitingContext(javax.faces.context.FacesContext context)
Sets up the context necessary to visit or invoke the component for all phases.
The default implementation does nothing.
If a subclass overrides this method, it should override
tearDownVisitingContext
as well.
It is guaranteed that if setupVisitingContext
completes
tearDownVisitingContext
will be called for this component
tearDownVisitingContext(javax.faces.context.FacesContext)
,
setUpEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext)
,
tearDownEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext)
protected void tearDownVisitingContext(javax.faces.context.FacesContext context)
Tears down context created in order to visit or invoke the component for all phases.
The default implementation does nothing.
A subclass should only override this method if it overrode
setupVisitingContext
as well
It is guaranteed that tearDownVisitingContext
will be called only after
setupVisitingContext
has been called for this component
setupVisitingContext(javax.faces.context.FacesContext)
,
setUpEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext)
,
tearDownEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext)
protected void setUpEncodingContext(javax.faces.context.FacesContext context, RenderingContext rc)
Sets up the context necessary to encode the component.
The default implementation delegates to
CoreRenderer.setupEncodingContext
and then calls
setupVisitingContext
If a subclass overrides this method, it should override
tearDownEncodingContext
as well.
It is guaranteed that if setUpEncodingContext
completes
tearDownEncodingContext
will be called for this component
setupVisitingContext(javax.faces.context.FacesContext)
,
tearDownVisitingContext(javax.faces.context.FacesContext)
,
tearDownEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext)
,
CoreRenderer.setupEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext, org.apache.myfaces.trinidad.component.UIXComponent)
protected void tearDownEncodingContext(javax.faces.context.FacesContext context, RenderingContext rc)
Tears down the context created in order to encode the component
The default implementation delegates to
CoreRenderer.tearDownEncodingContext
and then calls
tearDownVisitingContext
A subclass should only override this method if it overrode
setUpEncodingContext
as well
It is guaranteed that tearDownEncodingContext
will be called only after
setUpEncodingContext
has been called for this component
setUpEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext)
,
tearDownVisitingContext(javax.faces.context.FacesContext)
,
setUpEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext)
,
CoreRenderer.tearDownEncodingContext(javax.faces.context.FacesContext, org.apache.myfaces.trinidad.context.RenderingContext, org.apache.myfaces.trinidad.component.UIXComponent)
public abstract FacesBean getFacesBean()
public abstract void addAttributeChangeListener(AttributeChangeListener acl)
public abstract void removeAttributeChangeListener(AttributeChangeListener acl)
public abstract AttributeChangeListener[] getAttributeChangeListeners()
public abstract void setAttributeChangeListener(javax.el.MethodExpression me)
public abstract javax.el.MethodExpression getAttributeChangeListener()
public abstract void markInitialState()
public abstract java.lang.String getContainerClientId(javax.faces.context.FacesContext context, javax.faces.component.UIComponent child)
UIXComponentBase.getClientId(FacesContext context)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |