Class ViewMetadata
- java.lang.Object
-
- javax.faces.view.ViewMetadata
-
public abstract class ViewMetadata extends java.lang.Object
ViewMetadata
is reponsible for extracting and providing view parameter metadata from VDL views. BecauseViewDeclarationLanguage.getViewMetadata(javax.faces.context.FacesContext, java.lang.String)
is required to returnnull
for JSP views and non-null
for views authored in Facelets for JSF 2, this specification only applys to Facelets for JSF 2.- Since:
- 2.0
-
-
Constructor Summary
Constructors Constructor Description ViewMetadata()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract UIViewRoot
createMetadataView(FacesContext context)
Creates a newUIViewRoot
containing only view parameter metadata.static java.util.Collection<UIViewAction>
getViewActions(UIViewRoot root)
Utility method to extract view metadata from the providedUIViewRoot
.abstract java.lang.String
getViewId()
static java.util.Collection<UIViewParameter>
getViewParameters(UIViewRoot root)
Utility method to extract view metadata from the providedUIViewRoot
.static boolean
hasMetadata(UIViewRoot root)
Utility method to determine if the the providedUIViewRoot
has metadata.
-
-
-
Method Detail
-
getViewId
public abstract java.lang.String getViewId()
- Returns:
- the view ID for which this
ViewMetadata
instance was created
-
createMetadataView
public abstract UIViewRoot createMetadataView(FacesContext context)
Creates a new
UIViewRoot
containing only view parameter metadata. The processing of building thisUIViewRoot
with metadata should not cause any events to be published to the application. The implementation must callFacesContext.setProcessingEvents(boolean)
passingfalse
as the argument, at the beginning of the method, and passtrue
to the same method at the end. The implementation must ensure that this happens regardless of ant exceptions that may be thrown.- Parameters:
context
- theFacesContext
for the current request- Returns:
- a
UIViewRoot
containing only view parameter metadata (if any)
-
getViewParameters
public static java.util.Collection<UIViewParameter> getViewParameters(UIViewRoot root)
Utility method to extract view metadata from the provided
UIViewRoot
.- Parameters:
root
- theUIViewRoot
from which the metadata will be extracted.- Returns:
- a
Collection
ofUIViewParameter
instances. If the view has no metadata, the collection will be empty.
-
getViewActions
public static java.util.Collection<UIViewAction> getViewActions(UIViewRoot root)
Utility method to extract view metadata from the provided
UIViewRoot
.- Parameters:
root
- theUIViewRoot
from which the metadata will be extracted.- Returns:
- a
Collection
ofUIViewAction
instances. If the view has no metadata, the collection will be empty.
-
hasMetadata
public static boolean hasMetadata(UIViewRoot root)
Utility method to determine if the the provided
UIViewRoot
has metadata. The default implementation will return true if the providedUIViewRoot
has a facet namedUIViewRoot.METADATA_FACET_NAME
and that facet has children. It will return false otherwise.- Parameters:
root
- theUIViewRoot
from which the metadata will be extracted from- Returns:
- true if the view has metadata, false otherwise.
-
-