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
Modifier and Type | Field and Description |
---|---|
protected static Logger |
logger |
PASSTHROUGH_RENDERER_LOCALNAME_KEY
Constructor and Description |
---|
ScriptStyleBaseRenderer() |
Modifier and Type | Method and Description |
---|---|
void |
decode(FacesContext context,
UIComponent component)
Decode any new state of the specified
UIComponent
from the request contained in the specified FacesContext ,
and store that state on the UIComponent . |
void |
encodeBegin(FacesContext context,
UIComponent component)
Render the beginning specified
UIComponent to the
output stream or writer associated with the response we are creating. |
void |
encodeChildren(FacesContext context,
UIComponent component)
Render the child components of this
UIComponent , following
the rules described for encodeBegin() to acquire the
appropriate value to be rendered. |
void |
encodeEnd(FacesContext context,
UIComponent component)
Render the ending of the current state of the specified
UIComponent , following the rules described for
encodeBegin() 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 this
Renderer 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 specific
SystemEvent
subclass are true. |
protected abstract void |
startExternalElement(ResponseWriter writer,
UIComponent component)
Allow the subclass to customize the start external element content.
|
protected abstract void |
startInlineElement(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".
|
convertClientId, getConvertedValue
protected static final Logger logger
public void processEvent(ComponentSystemEvent event) throws AbortProcessingException
ComponentSystemEventListener
When called, the listener can assume that any guarantees given
in the javadoc for the specific SystemEvent
subclass are true.
processEvent
in interface ComponentSystemEventListener
event
- the ComponentSystemEvent
instance that
is being processed.AbortProcessingException
- if lifecycle processing should
cease for this request.public final void decode(FacesContext context, UIComponent component)
Renderer
Decode any new state of the specified UIComponent
from the request contained in the specified FacesContext
,
and store that state on the UIComponent
.
During decoding, events may be enqueued for later processing
(by event listeners that have registered an interest), by calling
queueEvent()
on the associated UIComponent
.
decode
in class Renderer
context
- FacesContext
for the request we are processingcomponent
- UIComponent
to be decoded.public final boolean getRendersChildren()
Renderer
Return a flag indicating whether this Renderer
is responsible
for rendering the children the component it is asked to render.
The default implementation returns false
.
getRendersChildren
in class Renderer
public void encodeBegin(FacesContext context, UIComponent component) throws IOException
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 to
getConvertedValue()
for this component failed, the state
information saved during execution
of decode()
should be used to reproduce the incorrect
input.
encodeBegin
in class Renderer
context
- FacesContext
for the request we are processingcomponent
- UIComponent
to be renderedIOException
- if an input/output error occurs while renderingpublic final void encodeChildren(FacesContext context, UIComponent component) throws IOException
Renderer
Render the child components of this UIComponent
, following
the rules described for encodeBegin()
to acquire the
appropriate value to be rendered. This method will only be called
if the rendersChildren
property of this component
is true
.
encodeChildren
in class Renderer
context
- FacesContext
for the response we are creatingcomponent
- UIComponent
whose children are to be renderedIOException
- if an input/output error occurs while renderingpublic void encodeEnd(FacesContext context, UIComponent component) throws IOException
Renderer
Render the ending of the current state of the specified
UIComponent
, following the rules described for
encodeBegin()
to acquire the appropriate value
to be rendered.
encodeEnd
in class Renderer
context
- FacesContext
for the response we are creatingcomponent
- UIComponent
to be renderedIOException
- if an input/output error occurs while renderingprotected abstract void startInlineElement(ResponseWriter writer, UIComponent component) throws IOException
Allow the subclass to customize the start inline element content.
IOException
protected abstract void endInlineElement(ResponseWriter writer, UIComponent component) throws IOException
Allow the subclass to customize the end inline element content.
IOException
protected abstract void startExternalElement(ResponseWriter writer, UIComponent component) throws IOException
Allow the subclass to customize the start external element content.
IOException
protected abstract void endExternalElement(ResponseWriter writer, UIComponent component, String resourceUrl) throws IOException
Allow the subclass to customize the end external element content.
IOException
Comments to: faces-dev@eclipse.org.
Copyright © 2019 Eclipse Foundation. All rights reserved.
Use is subject to license terms.