Class ScriptStyleBaseRenderer
- java.lang.Object
-
- jakarta.faces.render.Renderer
-
- com.sun.faces.renderkit.html_basic.ScriptStyleBaseRenderer
-
- All Implemented Interfaces:
ComponentSystemEventListener
,FacesListener
,EventListener
- Direct Known Subclasses:
ScriptRenderer
,StylesheetRenderer
public abstract class ScriptStyleBaseRenderer extends Renderer implements ComponentSystemEventListener
Base class for shared behavior between Script and Stylesheet renderers. Maybe composition would be better, but inheritance is easier
-
-
Field Summary
Fields Modifier and Type Field Description protected static Logger
logger
-
Fields inherited from class jakarta.faces.render.Renderer
PASSTHROUGH_RENDERER_LOCALNAME_KEY
-
-
Constructor Summary
Constructors Constructor Description ScriptStyleBaseRenderer()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
decode(FacesContext context, UIComponent component)
Decode any new state of the specifiedUIComponent
from the request contained in the specifiedFacesContext
, and store that state on theUIComponent
.void
encodeBegin(FacesContext context, UIComponent component)
Render the beginning specifiedUIComponent
to the output stream or writer associated with the response we are creating.void
encodeChildren(FacesContext context, UIComponent component)
Render the child components of thisUIComponent
, following the rules described forencodeBegin()
to acquire the appropriate value to be rendered.void
encodeEnd(FacesContext context, UIComponent component)
Render the ending of the current state of the specifiedUIComponent
, following the rules described forencodeBegin()
to acquire the appropriate value to be rendered.protected abstract void
endExternalElement(ResponseWriter writer, UIComponent component, String resourceUrl)
Allow the subclass to customize the end external element content.protected abstract void
endInlineElement(ResponseWriter writer, UIComponent component)
Allow the subclass to customize the end inline element content.boolean
getRendersChildren()
Return a flag indicating whether thisRenderer
is responsible for rendering the children the component it is asked to render.void
processEvent(ComponentSystemEvent event)
When called, the listener can assume that any guarantees given in the javadoc for the specificSystemEvent
subclass are true.protected abstract void
startExternalElement(FacesContext context, ResponseWriter writer, UIComponent component)
Allow the subclass to customize the start external element content.protected abstract void
startInlineElement(FacesContext context, ResponseWriter writer, UIComponent component)
Allow the subclass to customize the start inline element content.protected String
verifyTarget(String toVerify)
Allow a subclass to control what's a valid value for "target".-
Methods inherited from class jakarta.faces.render.Renderer
convertClientId, getConvertedValue
-
-
-
-
Field Detail
-
logger
protected static final Logger logger
-
-
Method Detail
-
processEvent
public void processEvent(ComponentSystemEvent event) throws AbortProcessingException
Description copied from interface:ComponentSystemEventListener
When called, the listener can assume that any guarantees given in the javadoc for the specific
SystemEvent
subclass are true.- Specified by:
processEvent
in interfaceComponentSystemEventListener
- Parameters:
event
- theComponentSystemEvent
instance that is being processed.- Throws:
AbortProcessingException
- if lifecycle processing should cease for this request.
-
decode
public final void decode(FacesContext context, UIComponent component)
Description copied from class:Renderer
Decode any new state of the specified
UIComponent
from the request contained in the specifiedFacesContext
, and store that state on theUIComponent
.During decoding, events may be enqueued for later processing (by event listeners that have registered an interest), by calling
queueEvent()
on the associatedUIComponent
.- Overrides:
decode
in classRenderer
- Parameters:
context
-FacesContext
for the request we are processingcomponent
-UIComponent
to be decoded.
-
getRendersChildren
public final boolean getRendersChildren()
Description copied from class:Renderer
Return a flag indicating whether this
Renderer
is responsible for rendering the children the component it is asked to render. The default implementation returnsfalse
.- Overrides:
getRendersChildren
in classRenderer
- Returns:
- the current value of the flag
-
encodeBegin
public void encodeBegin(FacesContext context, UIComponent component) throws IOException
Description copied from class:Renderer
Render the beginning specified
UIComponent
to the output stream or writer associated with the response we are creating. If the conversion attempted in a previous call togetConvertedValue()
for this component failed, the state information saved during execution ofdecode()
should be used to reproduce the incorrect input.- Overrides:
encodeBegin
in classRenderer
- Parameters:
context
-FacesContext
for the request we are processingcomponent
-UIComponent
to be rendered- Throws:
IOException
- if an input/output error occurs while rendering
-
encodeChildren
public final void encodeChildren(FacesContext context, UIComponent component) throws IOException
Description copied from class:Renderer
Render the child components of this
UIComponent
, following the rules described forencodeBegin()
to acquire the appropriate value to be rendered. This method will only be called if therendersChildren
property of this component istrue
.- Overrides:
encodeChildren
in classRenderer
- Parameters:
context
-FacesContext
for the response we are creatingcomponent
-UIComponent
whose children are to be rendered- Throws:
IOException
- if an input/output error occurs while rendering
-
encodeEnd
public void encodeEnd(FacesContext context, UIComponent component) throws IOException
Description copied from class:Renderer
Render the ending of the current state of the specified
UIComponent
, following the rules described forencodeBegin()
to acquire the appropriate value to be rendered.- Overrides:
encodeEnd
in classRenderer
- Parameters:
context
-FacesContext
for the response we are creatingcomponent
-UIComponent
to be rendered- Throws:
IOException
- if an input/output error occurs while rendering
-
startInlineElement
protected abstract void startInlineElement(FacesContext context, ResponseWriter writer, UIComponent component) throws IOException
Allow the subclass to customize the start inline element content.
- Throws:
IOException
-
endInlineElement
protected abstract void endInlineElement(ResponseWriter writer, UIComponent component) throws IOException
Allow the subclass to customize the end inline element content.
- Throws:
IOException
-
startExternalElement
protected abstract void startExternalElement(FacesContext context, ResponseWriter writer, UIComponent component) throws IOException
Allow the subclass to customize the start external element content.
- Throws:
IOException
-
endExternalElement
protected abstract void endExternalElement(ResponseWriter writer, UIComponent component, String resourceUrl) throws IOException
Allow the subclass to customize the end external element content.
- Throws:
IOException
-
-