Package com.sun.faces.facelets.tag
Class AbstractTagLibrary
- java.lang.Object
-
- com.sun.faces.facelets.tag.AbstractTagLibrary
-
- All Implemented Interfaces:
TagLibrary
- Direct Known Subclasses:
AbstractHtmlLibrary
,CompositeLibrary
,CoreLibrary
,JstlCoreLibrary
,PassThroughAttributeLibrary
,PassThroughElementLibrary
,TagLibraryImpl
,UILibrary
public abstract class AbstractTagLibrary extends Object implements TagLibrary
Base class for defining TagLibraries in Java- Author:
- Jacob Hookom
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
AbstractTagLibrary.ComponentConfigWrapper
-
Constructor Summary
Constructors Constructor Description AbstractTagLibrary(String namespace)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addBehavior(String name, String behaviorId)
protected void
addBehavior(String name, String behaviorId, Class type)
protected void
addComponent(String name, String componentType, String rendererType)
Add a ComponentHandlerImpl with the specified componentType and rendererType, aliased by the tag name.protected void
addComponent(String name, String componentType, String rendererType, Class handlerType)
Add a ComponentHandlerImpl with the specified componentType and rendererType, aliased by the tag name.protected void
addCompositeComponentTag(String name, String resourceId)
Add a CompositeComponentTagHandler for the specified resource.protected void
addConverter(String name, String converterId)
Add a ConverterHandler for the specified converterIdprotected void
addConverter(String name, String converterId, Class type)
Add a ConverterHandler for the specified converterId of a TagHandler typeprotected void
addFunction(String name, Method method)
Add a Method to be used as a Function at Compilation.protected void
addTagHandler(String name, Class handlerType)
Use the specified HandlerType in compiling Facelets.protected void
addUserTag(String name, URL source)
Add a UserTagHandler specified a the URL source.protected void
addValidator(String name, String validatorId)
Add a ValidatorHandler for the specified validatorIdprotected void
addValidator(String name, String validatorId, Class type)
Add a ValidatorHandler for the specified validatorIdboolean
containsFunction(String ns, String name)
If this library contains the specified function nameboolean
containsNamespace(String ns, Tag t)
true if the namespace is used in this libraryboolean
containsTagHandler(String ns, String localName)
If this library contains a TagHandler for the namespace and local name true if handled by this libraryMethod
createFunction(String ns, String name)
Return a Method instance for the passed namespace and nameTagHandler
createTagHandler(String ns, String localName, TagConfig tag)
Create a new instance of a TagHandler, using the passed TagConfigboolean
equals(Object obj)
String
getNamespace()
int
hashCode()
-
-
-
Constructor Detail
-
AbstractTagLibrary
public AbstractTagLibrary(String namespace)
-
-
Method Detail
-
addComponent
protected final void addComponent(String name, String componentType, String rendererType)
Add a ComponentHandlerImpl with the specified componentType and rendererType, aliased by the tag name.- Parameters:
name
- name to use, "foo" would be<my:foo />
componentType
- componentType to userendererType
- rendererType to use- See Also:
Application.createComponent(java.lang.String)
-
addComponent
protected final void addComponent(String name, String componentType, String rendererType, Class handlerType)
Add a ComponentHandlerImpl with the specified componentType and rendererType, aliased by the tag name. The Facelet will be compiled with the specified HandlerType (which must extend AbstractComponentHandler).- Parameters:
name
- name to use, "foo" would be<my:foo />
componentType
- componentType to userendererType
- rendererType to usehandlerType
- a Class that extends ComponentHandler
-
addConverter
protected final void addConverter(String name, String converterId)
Add a ConverterHandler for the specified converterId- Parameters:
name
- name to use, "foo" would be<my:foo />
converterId
- id to pass to Application instance- See Also:
ConverterHandler
,Application.createConverter(java.lang.String)
-
addConverter
protected final void addConverter(String name, String converterId, Class type)
Add a ConverterHandler for the specified converterId of a TagHandler type- Parameters:
name
- name to use, "foo" would be<my:foo />
converterId
- id to pass to Application instancetype
- TagHandler type that takes in a ConverterConfig- See Also:
ConverterHandler
,ConverterConfig
,Application.createConverter(java.lang.String)
-
addValidator
protected final void addValidator(String name, String validatorId)
Add a ValidatorHandler for the specified validatorId- Parameters:
name
- name to use, "foo" would be<my:foo />
validatorId
- id to pass to Application instance- See Also:
ValidatorHandler
,Application.createValidator(java.lang.String)
-
addValidator
protected final void addValidator(String name, String validatorId, Class type)
Add a ValidatorHandler for the specified validatorId- Parameters:
name
- name to use, "foo" would be<my:foo />
validatorId
- id to pass to Application instancetype
- TagHandler type that takes in a ValidatorConfig- See Also:
ValidatorHandler
,ValidatorConfig
,Application.createValidator(java.lang.String)
-
addBehavior
protected final void addBehavior(String name, String behaviorId)
- Parameters:
name
-behaviorId
-
-
addTagHandler
protected final void addTagHandler(String name, Class handlerType)
Use the specified HandlerType in compiling Facelets. HandlerType must extend TagHandler.- Parameters:
name
- name to use, "foo" would be<my:foo />
handlerType
- must extend TagHandler- See Also:
TagHandler
-
addUserTag
protected final void addUserTag(String name, URL source)
Add a UserTagHandler specified a the URL source.- Parameters:
name
- name to use, "foo" would be<my:foo />
source
- source where the Facelet (Tag) source is- See Also:
UserTagHandler
-
addCompositeComponentTag
protected final void addCompositeComponentTag(String name, String resourceId)
Add a CompositeComponentTagHandler for the specified resource.- Parameters:
name
- name to use, "foo" would be<my:foo />
resourceId
- source where the Facelet (Tag) source is- See Also:
UserTagHandler
-
addFunction
protected final void addFunction(String name, Method method)
Add a Method to be used as a Function at Compilation.- Parameters:
name
- (suffix) of function namemethod
- method instance- See Also:
FunctionMapper
-
containsNamespace
public boolean containsNamespace(String ns, Tag t)
Description copied from interface:TagLibrary
true if the namespace is used in this library- Specified by:
containsNamespace
in interfaceTagLibrary
- Parameters:
ns
- namespacet
- the tag instance currently active at the time this method is called. May be null- Returns:
- whether the namespace is used in this library
-
containsTagHandler
public boolean containsTagHandler(String ns, String localName)
Description copied from interface:TagLibrary
If this library contains a TagHandler for the namespace and local name true if handled by this library- Specified by:
containsTagHandler
in interfaceTagLibrary
- Parameters:
ns
- namespacelocalName
- local name- Returns:
- whether handled by this library
-
createTagHandler
public TagHandler createTagHandler(String ns, String localName, TagConfig tag) throws FacesException
Description copied from interface:TagLibrary
Create a new instance of a TagHandler, using the passed TagConfig- Specified by:
createTagHandler
in interfaceTagLibrary
- Parameters:
ns
- namespacelocalName
- local nametag
- configuration information- Returns:
- a new TagHandler instance
- Throws:
FacesException
- when a Faces exception occurs
-
containsFunction
public boolean containsFunction(String ns, String name)
Description copied from interface:TagLibrary
If this library contains the specified function name- Specified by:
containsFunction
in interfaceTagLibrary
- Parameters:
ns
- namespacename
- function name- Returns:
- true if handled
-
createFunction
public Method createFunction(String ns, String name)
Description copied from interface:TagLibrary
Return a Method instance for the passed namespace and name- Specified by:
createFunction
in interfaceTagLibrary
- Parameters:
ns
- namespacename
- function name- Returns:
- a Method instance for the passed namespace and name
-
getNamespace
public String getNamespace()
-
-