public class FaceletCompositionContextImpl extends FaceletCompositionContext
Modifier and Type | Field and Description |
---|---|
static String |
INIT_PARAM_CACHE_EL_EXPRESSIONS
Indicates if expressions generated by facelets should be cached or not.
|
static String |
INIT_PARAM_WRAP_TAG_EXCEPTIONS_AS_CONTEXT_AWARE
Wrap exception caused by calls to EL expressions, so information like
the location, expression string and tag name can be retrieved by
the ExceptionHandler implementation and used to output meaningful information about itself.
|
FACELET_COMPOSITION_CONTEXT_KEY
Constructor and Description |
---|
FaceletCompositionContextImpl(FaceletFactory factory,
FacesContext facesContext) |
FaceletCompositionContextImpl(FaceletFactory factory,
FacesContext facesContext,
String base)
This constructor is intended for places where the id generation strategy needs to be changed
adding a unique base id, like for example on a dynamic component creation.
|
Modifier and Type | Method and Description |
---|---|
void |
addAttachedObjectHandler(UIComponent compositeComponentParent,
AttachedObjectHandler handler)
Add to the composite component parent this handler, so it will be processed later when
ViewDeclarationLanguage.retargetAttachedObjects is called.
|
void |
addMethodExpressionTargeted(UIComponent targetedComponent,
String attributeName,
Object backingValue)
Add a method expression as targeted for the provided composite component
|
void |
addUniqueId(String uniqueId)
Add an unique id to the list if recording is enabled,
if recording is not enabled it has no effect.
|
void |
clearMethodExpressionAttribute(UIComponent compositeComponentParent,
String attributeName)
Clear the MethodExpression attribute to call vdl.retargetMethodExpression again
|
boolean |
containsEnclosingValidatorId(String id) |
void |
endComponentUniqueIdSection()
Ends the current unique id section, so the previous counter will be used
to generate unique ids to components.
|
void |
endComponentUniqueIdSection(String base) |
void |
endMetadataSection()
Call this method to indicate f:metadata section has been already processed
since 2.1.7, 2.0.13
|
void |
finalizeForDeletion(UIComponent component)
Used in conjunction with markForDeletion where any UIComponent marked will be removed.
|
void |
finalizeRelocatableResourcesForDeletion(UIViewRoot root)
Used to clean up all unused relocatable components on the root component.
|
String |
generateUniqueComponentId()
Generate a unique id for component instances.
|
String |
generateUniqueId()
Generate a unique id that will be used later to derive a unique id per tag
by FaceletContext.generateUniqueId().
|
void |
generateUniqueId(StringBuilder builderToAdd) |
List<AttachedObjectHandler> |
getAttachedObjectHandlers(UIComponent compositeComponentParent)
Retrieve the list of object handlers attached to a composite component parent.
|
UIComponent |
getCompositeComponentFromStack()
Return the composite component being applied on the current facelet.
|
int |
getCompositeComponentLevel()
Returns the current nesting level of composite components found.
|
ELExpressionCacheMode |
getELExpressionCacheMode()
Indicates if a EL Expression can be or not cached by facelets vdl.
|
Iterator<String> |
getEnclosingValidatorIds()
Gets all validationIds on the stack.
|
Iterator<Map.Entry<String,EditableValueHolderAttachedObjectHandler>> |
getEnclosingValidatorIdsAndHandlers()
Gets all validationIds with its associated EditableValueHolderAttachedObjectHandler from the stack.
|
Iterator<String> |
getExcludedValidatorIds()
Gets all validationIds on the stack.
|
FaceletFactory |
getFaceletFactory() |
String |
getFirstValidationGroupFromStack()
Gets the top of the validationGroups stack.
|
StringBuilder |
getSharedStringBuilder() |
String |
getUniqueIdFromIterator()
Return the unique id from the iterator if applies
since 2.1.7, 2.0.13
|
List<String> |
getUniqueIdList()
Return the list of unique ids
since 2.1.7, 2.0.13
|
UniqueIdVendor |
getUniqueIdVendorFromStack()
Return the latest UniqueIdVendor created from stack.
|
UIViewRoot |
getViewRoot(FacesContext facesContext) |
VisitContextFactory |
getVisitContextFactory() |
void |
incrementUniqueComponentId() |
void |
incrementUniqueId()
Increment the unique id without construct it.
|
void |
initUniqueIdRecording()
Activater record unique id mode, so an structure will be
used to hold those values.
|
boolean |
isBuildingViewMetadata()
Check if the facelet is building view metadata
since 2.1.7, 2.0.13
|
boolean |
isDynamicComponentSection()
Indicate if the current facelet section is a dynamic component section,
which means it was added to the component tree using vdl.createComponent(...);
|
boolean |
isDynamicComponentTopLevel()
Check if the algorithm is applying a dynamic component and the current component
is the top level one.
|
boolean |
isDynamicCompositeComponentHandler() |
boolean |
isInMetadataSection()
Check if the component is created inside f:metadata section
since 2.1.7, 2.0.13
|
boolean |
isMarkInitialState()
Check if this build should be marked as initial state.
|
boolean |
isMarkInitialStateAndIsRefreshTransientBuildOnPSS() |
boolean |
isMethodExpressionAttributeApplied(UIComponent compositeComponentParent,
String attributeName)
Check if the MethodExpression attribute has been applied using vdl.retargetMethodExpression
|
boolean |
isRefreshingSection()
Check if the section to be processed is being refreshed.
|
boolean |
isRefreshingTransientBuild()
Check if this build is being refreshed, adding transient components
and adding/removing components under c:if or c:forEach or not.
|
boolean |
isRefreshTransientBuildOnPSS()
Check if the current view will be refreshed with partial state saving.
|
boolean |
isRefreshTransientBuildOnPSSPreserveState() |
boolean |
isUsingPSSOnThisView()
Check if we are using partial state saving on this view
|
boolean |
isWrapTagExceptionsAsContextAware() |
void |
markForDeletion(UIComponent component)
Marks all direct children and Facets with an attribute for deletion.
|
void |
markMethodExpressionAttribute(UIComponent compositeComponentParent,
String attributeName)
Mark the MethodExpression attribute as applied using vdl.retargetMethodExpression
|
void |
markRelocatableResourceForDeletion(UIComponent component)
Marks the given resource for deletion.
|
void |
popCompositeComponentToStack() |
void |
popDynamicComponentSection() |
void |
popEnclosingValidatorIdToStack()
Removes top of stack.
|
void |
popExcludedValidatorIdToStack()
Removes top of stack.
|
void |
popUniqueIdVendorToStack() |
void |
popValidationGroupsToStack()
Removes top of stack.
|
void |
pushCompositeComponentToStack(UIComponent parent) |
void |
pushDynamicComponentSection(String base) |
void |
pushEnclosingValidatorIdToStack(String validatorId)
Pushes validatorId to the stack of all enclosing validatorIds.
|
void |
pushEnclosingValidatorIdToStack(String validatorId,
EditableValueHolderAttachedObjectHandler attachedObjectHandler)
Pushes validatorId to the stack of all enclosing validatorIds.
|
void |
pushExcludedValidatorIdToStack(String validatorId)
Pushes validatorId to the stack of excluded validatorIds.
|
void |
pushUniqueIdVendorToStack(UniqueIdVendor parent) |
void |
pushValidationGroupsToStack(String validationGroups)
Pushes validationGroups to the stack.
|
void |
release(FacesContext facesContext)
Releases the MyFaceletContext object.
|
void |
removeAttachedObjectHandlers(UIComponent compositeComponentParent)
Remove from the composite component parent the list of attached handlers.
|
void |
removeComponentForDeletion(UIComponent component) |
Object |
removeMethodExpressionTargeted(UIComponent targetedComponent,
String attributeName)
Remove a method expression as targeted for the provided composite component
|
void |
setDynamicComponentTopLevel(boolean value) |
void |
setDynamicCompositeComponentHandler(boolean value) |
void |
setMarkInitialState(boolean value) |
void |
setUniqueIdsIterator(Iterator<String> uniqueIdsIterator)
Set the iterator used to retrieve unique ids.
|
void |
setViewRoot(UIViewRoot root) |
String |
startComponentUniqueIdSection()
Start a new unique id section, which means a new counter is used to
generate unique ids to components
|
String |
startComponentUniqueIdSection(String base)
Start a new unique id section, which means a new counter is used to
generate unique ids to components, but appending a base to the
new counter.
|
void |
startMetadataSection()
Call this method to indicate a f:metadata section is about to be processed
since 2.1.7, 2.0.13
|
getCurrentInstance, getCurrentInstance, getCurrentInstance, init
@JSFWebConfigParam(since="2.0.8", defaultValue="noCache", expectedValues="noCache, strict, allowCset, always, alwaysRecompile", group="EL", tags="performance") public static final String INIT_PARAM_CACHE_EL_EXPRESSIONS
@JSFWebConfigParam(since="2.0.9, 2.1.3", defaultValue="true", expectedValues="true, false") public static final String INIT_PARAM_WRAP_TAG_EXCEPTIONS_AS_CONTEXT_AWARE
Note in some cases this will wrap the original javax.el.ELException, so the information will not be on the stack trace unless ExceptionHandler retrieve checking if the exception implements ContextAware interface and calling getWrapped() method.
public FaceletCompositionContextImpl(FaceletFactory factory, FacesContext facesContext)
public FaceletCompositionContextImpl(FaceletFactory factory, FacesContext facesContext, String base)
factory
- facesContext
- base
- public void setUniqueIdsIterator(Iterator<String> uniqueIdsIterator)
FaceletCompositionContext
setUniqueIdsIterator
in class FaceletCompositionContext
public void initUniqueIdRecording()
FaceletCompositionContext
initUniqueIdRecording
in class FaceletCompositionContext
public void addUniqueId(String uniqueId)
FaceletCompositionContext
addUniqueId
in class FaceletCompositionContext
public String getUniqueIdFromIterator()
FaceletCompositionContext
getUniqueIdFromIterator
in class FaceletCompositionContext
public List<String> getUniqueIdList()
FaceletCompositionContext
getUniqueIdList
in class FaceletCompositionContext
public FaceletFactory getFaceletFactory()
getFaceletFactory
in class FaceletCompositionContext
public void release(FacesContext facesContext)
FaceletCompositionContext
release
in class FaceletCompositionContext
public UIComponent getCompositeComponentFromStack()
FaceletCompositionContext
getCompositeComponentFromStack
in class FaceletCompositionContext
public void pushCompositeComponentToStack(UIComponent parent)
pushCompositeComponentToStack
in class FaceletCompositionContext
public void popCompositeComponentToStack()
popCompositeComponentToStack
in class FaceletCompositionContext
public int getCompositeComponentLevel()
FaceletCompositionContext
getCompositeComponentLevel
in class FaceletCompositionContext
public UniqueIdVendor getUniqueIdVendorFromStack()
FaceletCompositionContext
getUniqueIdVendorFromStack
in class FaceletCompositionContext
public void popUniqueIdVendorToStack()
popUniqueIdVendorToStack
in class FaceletCompositionContext
public void pushUniqueIdVendorToStack(UniqueIdVendor parent)
pushUniqueIdVendorToStack
in class FaceletCompositionContext
public String getFirstValidationGroupFromStack()
getFirstValidationGroupFromStack
in class FaceletCompositionContext
public void popValidationGroupsToStack()
popValidationGroupsToStack
in class FaceletCompositionContext
public void pushValidationGroupsToStack(String validationGroups)
pushValidationGroupsToStack
in class FaceletCompositionContext
validationGroups
- public Iterator<String> getExcludedValidatorIds()
getExcludedValidatorIds
in class FaceletCompositionContext
public void popExcludedValidatorIdToStack()
popExcludedValidatorIdToStack
in class FaceletCompositionContext
public void pushExcludedValidatorIdToStack(String validatorId)
pushExcludedValidatorIdToStack
in class FaceletCompositionContext
validatorId
- public Iterator<String> getEnclosingValidatorIds()
getEnclosingValidatorIds
in class FaceletCompositionContext
public void popEnclosingValidatorIdToStack()
popEnclosingValidatorIdToStack
in class FaceletCompositionContext
public void pushEnclosingValidatorIdToStack(String validatorId)
pushEnclosingValidatorIdToStack
in class FaceletCompositionContext
validatorId
- public void pushEnclosingValidatorIdToStack(String validatorId, EditableValueHolderAttachedObjectHandler attachedObjectHandler)
FaceletCompositionContext
pushEnclosingValidatorIdToStack
in class FaceletCompositionContext
public Iterator<Map.Entry<String,EditableValueHolderAttachedObjectHandler>> getEnclosingValidatorIdsAndHandlers()
FaceletCompositionContext
getEnclosingValidatorIdsAndHandlers
in class FaceletCompositionContext
public boolean containsEnclosingValidatorId(String id)
containsEnclosingValidatorId
in class FaceletCompositionContext
public boolean isRefreshingTransientBuild()
FaceletCompositionContext
isRefreshingTransientBuild
in class FaceletCompositionContext
public boolean isMarkInitialState()
FaceletCompositionContext
isMarkInitialState
in class FaceletCompositionContext
public void setMarkInitialState(boolean value)
setMarkInitialState
in class FaceletCompositionContext
public boolean isRefreshTransientBuildOnPSS()
FaceletCompositionContext
isRefreshTransientBuildOnPSS
in class FaceletCompositionContext
public boolean isRefreshTransientBuildOnPSSPreserveState()
isRefreshTransientBuildOnPSSPreserveState
in class FaceletCompositionContext
public boolean isBuildingViewMetadata()
FaceletCompositionContext
isBuildingViewMetadata
in class FaceletCompositionContext
public boolean isUsingPSSOnThisView()
FaceletCompositionContext
isUsingPSSOnThisView
in class FaceletCompositionContext
public boolean isMarkInitialStateAndIsRefreshTransientBuildOnPSS()
isMarkInitialStateAndIsRefreshTransientBuildOnPSS
in class FaceletCompositionContext
public ELExpressionCacheMode getELExpressionCacheMode()
FaceletCompositionContext
getELExpressionCacheMode
in class FaceletCompositionContext
public boolean isWrapTagExceptionsAsContextAware()
isWrapTagExceptionsAsContextAware
in class FaceletCompositionContext
public void addAttachedObjectHandler(UIComponent compositeComponentParent, AttachedObjectHandler handler)
FaceletCompositionContext
addAttachedObjectHandler
in class FaceletCompositionContext
public void removeAttachedObjectHandlers(UIComponent compositeComponentParent)
FaceletCompositionContext
removeAttachedObjectHandlers
in class FaceletCompositionContext
public List<AttachedObjectHandler> getAttachedObjectHandlers(UIComponent compositeComponentParent)
FaceletCompositionContext
getAttachedObjectHandlers
in class FaceletCompositionContext
public void addMethodExpressionTargeted(UIComponent targetedComponent, String attributeName, Object backingValue)
FaceletCompositionContext
addMethodExpressionTargeted
in class FaceletCompositionContext
backingValue
- A value that could be useful to revert its effects.public boolean isMethodExpressionAttributeApplied(UIComponent compositeComponentParent, String attributeName)
FaceletCompositionContext
isMethodExpressionAttributeApplied
in class FaceletCompositionContext
public void markMethodExpressionAttribute(UIComponent compositeComponentParent, String attributeName)
FaceletCompositionContext
markMethodExpressionAttribute
in class FaceletCompositionContext
public void clearMethodExpressionAttribute(UIComponent compositeComponentParent, String attributeName)
FaceletCompositionContext
clearMethodExpressionAttribute
in class FaceletCompositionContext
public Object removeMethodExpressionTargeted(UIComponent targetedComponent, String attributeName)
FaceletCompositionContext
removeMethodExpressionTargeted
in class FaceletCompositionContext
public void markForDeletion(UIComponent component)
FaceletCompositionContext
markForDeletion
in class FaceletCompositionContext
component
- UIComponent to markFaceletCompositionContext.finalizeForDeletion(UIComponent)
public void removeComponentForDeletion(UIComponent component)
removeComponentForDeletion
in class FaceletCompositionContext
public void finalizeForDeletion(UIComponent component)
FaceletCompositionContext
finalizeForDeletion
in class FaceletCompositionContext
component
- UIComponent to finalizepublic void markRelocatableResourceForDeletion(UIComponent component)
FaceletCompositionContext
FaceletCompositionContext.markForDeletion(UIComponent)
.markRelocatableResourceForDeletion
in class FaceletCompositionContext
component
- UIComponent to finalizepublic void finalizeRelocatableResourcesForDeletion(UIViewRoot root)
FaceletCompositionContext
finalizeRelocatableResourcesForDeletion
in class FaceletCompositionContext
root
- UIComponent to finalize (root component)public String startComponentUniqueIdSection()
FaceletCompositionContext
startComponentUniqueIdSection
in class FaceletCompositionContext
public String startComponentUniqueIdSection(String base)
FaceletCompositionContext
startComponentUniqueIdSection
in class FaceletCompositionContext
public void incrementUniqueId()
FaceletCompositionContext
incrementUniqueId
in class FaceletCompositionContext
public String generateUniqueId()
FaceletCompositionContext
generateUniqueId
in class FaceletCompositionContext
public void generateUniqueId(StringBuilder builderToAdd)
generateUniqueId
in class FaceletCompositionContext
public String generateUniqueComponentId()
FaceletCompositionContext
generateUniqueComponentId
in class FaceletCompositionContext
public void incrementUniqueComponentId()
incrementUniqueComponentId
in class FaceletCompositionContext
public void endComponentUniqueIdSection()
FaceletCompositionContext
endComponentUniqueIdSection
in class FaceletCompositionContext
public void endComponentUniqueIdSection(String base)
endComponentUniqueIdSection
in class FaceletCompositionContext
public void startMetadataSection()
FaceletCompositionContext
startMetadataSection
in class FaceletCompositionContext
public void endMetadataSection()
FaceletCompositionContext
endMetadataSection
in class FaceletCompositionContext
public boolean isInMetadataSection()
FaceletCompositionContext
isInMetadataSection
in class FaceletCompositionContext
public boolean isRefreshingSection()
FaceletCompositionContext
isRefreshingSection
in class FaceletCompositionContext
public StringBuilder getSharedStringBuilder()
getSharedStringBuilder
in class FaceletCompositionContext
public boolean isDynamicCompositeComponentHandler()
isDynamicCompositeComponentHandler
in class FaceletCompositionContext
public void setDynamicCompositeComponentHandler(boolean value)
setDynamicCompositeComponentHandler
in class FaceletCompositionContext
public void pushDynamicComponentSection(String base)
pushDynamicComponentSection
in class FaceletCompositionContext
public void popDynamicComponentSection()
popDynamicComponentSection
in class FaceletCompositionContext
public boolean isDynamicComponentTopLevel()
FaceletCompositionContext
isDynamicComponentTopLevel
in class FaceletCompositionContext
public void setDynamicComponentTopLevel(boolean value)
setDynamicComponentTopLevel
in class FaceletCompositionContext
public boolean isDynamicComponentSection()
FaceletCompositionContext
isDynamicComponentSection
in class FaceletCompositionContext
public void setViewRoot(UIViewRoot root)
setViewRoot
in class FaceletCompositionContext
public UIViewRoot getViewRoot(FacesContext facesContext)
getViewRoot
in class FaceletCompositionContext
public VisitContextFactory getVisitContextFactory()
getVisitContextFactory
in class FaceletCompositionContext
Copyright © 2020 The Apache Software Foundation. All rights reserved.