Top Description Inners Fields Constructors Methods
com.sun.faces.config.processor

public Class FacesFlowDefinitionConfigProcessor

extends AbstractConfigProcessor
Class Inheritance
Static Imports
com.sun.faces.util.Util.createLocalDocumentBuilderFactory, .Util.notNull

This ConfigProcessor handles all elements defined under /faces-config/flow-definition.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
private class

Field Summary

Modifier and TypeField and Description
private static final String
FACES_FLOW_DEFINITION

/faces-config/flow-definition

private static final String
private static final Logger

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private void
protected String
getAttribute(Node node, String attrName)

protected String
private List<FacesFlowDefinitionConfigProcessor.FlowDefinitionDocument>
public void
process(ServletContext
the ServletContext for the application being configured
sc
,
FacesContext
the current faces context
facesContext
,
DocumentInfo[]
the document infos
documentInfos
)

Implements com.sun.faces.config.processor.ConfigProcessor.process.

Process the array of Documents.

private void
processFacesFlowDefinitions(FacesContext context, URI definingDocumentURI, Document document)

private void
processFlowCalls(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private void
processInboundParameters(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private void
processInitializerFinalizer(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private void
processMethodCalls(FacesContext context, XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private void
processNavigationRules(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private void
processReturns(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private String
processStartNode(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private void
processSwitches(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private void
processViews(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder)

private void
saveFlowDefinition(FacesContext context, URI definingDocumentURI, Document flowDefinitions)

public static Document
public static boolean
Inherited from com.sun.faces.config.processor.AbstractConfigProcessor:
createInstancecreateInstancecreateInstancedestroydestroyInstancefindRootTypegetApplicationgetClassMetadataMapKeygetNodeTextgetTextMapinitializeClassMetadataMaploadClassprocessAnnotations

Field Detail

FACES_FLOW_DEFINITIONback to summary
private static final String FACES_FLOW_DEFINITION

/faces-config/flow-definition

flowDefinitionListKeyback to summary
private static final String flowDefinitionListKey
LOGGERback to summary
private static final Logger LOGGER

Hides com.sun.faces.config.processor.AbstractConfigProcessor.LOGGER.

Constructor Detail

FacesFlowDefinitionConfigProcessorback to summary
public FacesFlowDefinitionConfigProcessor()

Method Detail

clearSavedFlowDefinitionsback to summary
private void clearSavedFlowDefinitions(FacesContext context)
getAttributeback to summary
protected String getAttribute(Node node, String attrName)
getIdAttributeback to summary
protected String getIdAttribute(Node node) throws XPathExpressionException
getSavedFlowDefinitionsback to summary
private List<FacesFlowDefinitionConfigProcessor.FlowDefinitionDocument> getSavedFlowDefinitions(FacesContext context)
processback to summary
public void process(ServletContext sc, FacesContext facesContext, DocumentInfo[] documentInfos) throws Exception

Implements com.sun.faces.config.processor.ConfigProcessor.process.

Doc from com.sun.faces.config.processor.ConfigProcessor.process.

Process the array of Documents.

Parameters
sc:ServletContext

the ServletContext for the application being configured

facesContext:FacesContext

the current faces context

documentInfos:DocumentInfo[]

the document infos

Annotations
@Override
Exceptions
Exception:
if an error occurs during processing
processFacesFlowDefinitionsback to summary
private void processFacesFlowDefinitions(FacesContext context, URI definingDocumentURI, Document document) throws XPathExpressionException
processFlowCallsback to summary
private void processFlowCalls(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
processInboundParametersback to summary
private void processInboundParameters(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
processInitializerFinalizerback to summary
private void processInitializerFinalizer(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
processMethodCallsback to summary
private void processMethodCalls(FacesContext context, XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
processNavigationRulesback to summary
private void processNavigationRules(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
processReturnsback to summary
private void processReturns(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
processStartNodeback to summary
private String processStartNode(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
processSwitchesback to summary
private void processSwitches(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
processViewsback to summary
private void processViews(XPath xpath, Node flowDefinition, FlowBuilder flowBuilder) throws XPathExpressionException
saveFlowDefinitionback to summary
private void saveFlowDefinition(FacesContext context, URI definingDocumentURI, Document flowDefinitions)
synthesizeEmptyFlowDefinitionback to summary
public static Document synthesizeEmptyFlowDefinition(URI uri) throws ParserConfigurationException
uriIsFlowDefinitionback to summary
public static boolean uriIsFlowDefinition(URI uri)
com.sun.faces.config.processor back to summary

private Class FacesFlowDefinitionConfigProcessor.FlowDefinitionDocument

extends Object
Class Inheritance
  • java.lang.Object
  • com.sun.faces.config.processor.FacesFlowDefinitionConfigProcessor.FlowDefinitionDocument

Field Summary

Modifier and TypeField and Description
pack-priv URI
pack-priv Document

Constructor Summary

AccessConstructor and Description
public
FlowDefinitionDocument(URI definingDocumentURI, Document flowDefinitions)

Method Summary

Modifier and TypeMethod and Description
public void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

definingDocumentURIback to summary
pack-priv URI definingDocumentURI
flowDefinitionsback to summary
pack-priv Document flowDefinitions

Constructor Detail

FlowDefinitionDocumentback to summary
public FlowDefinitionDocument(URI definingDocumentURI, Document flowDefinitions)

Method Detail

clearback to summary
public void clear()
com.sun.faces.config.processor back to summary

private Class FacesFlowDefinitionConfigProcessor.PerformDeferredFlowProcessing

extends Object
implements SystemEventListener
Class Inheritance
  • java.lang.Object
  • com.sun.faces.config.processor.FacesFlowDefinitionConfigProcessor.PerformDeferredFlowProcessing
All Implemented Interfaces
jakarta.faces.event.SystemEventListener, jakarta.faces.event.FacesListener, java.util.EventListener

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public boolean
isListenerForSource(Object
the source that is inquiring about the appropriateness of sending an event to this listener instance.
source
)

Implements jakarta.faces.event.SystemEventListener.isListenerForSource.

This method must return true if and only if this listener instance is interested in receiving events from the instance referenced by the source parameter.

public void
processEvent(SystemEvent
the SystemEvent instance that is being processed.
event
)

Implements jakarta.faces.event.SystemEventListener.processEvent.

When called, the listener can assume that any guarantees given in the javadoc for the specific SystemEvent subclass are true.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

PerformDeferredFlowProcessingback to summary
private PerformDeferredFlowProcessing()

Method Detail

isListenerForSourceback to summary
public boolean isListenerForSource(Object source)

Implements jakarta.faces.event.SystemEventListener.isListenerForSource.

Doc from jakarta.faces.event.SystemEventListener.isListenerForSource.

This method must return true if and only if this listener instance is interested in receiving events from the instance referenced by the source parameter.

Parameters
source:Object

the source that is inquiring about the appropriateness of sending an event to this listener instance.

Returns:boolean

the value as specified above

Annotations
@Override
processEventback to summary
public void processEvent(SystemEvent event) throws AbortProcessingException

Implements jakarta.faces.event.SystemEventListener.processEvent.

Doc from jakarta.faces.event.SystemEventListener.processEvent.

When called, the listener can assume that any guarantees given in the javadoc for the specific SystemEvent subclass are true.

Parameters
event:SystemEvent

the SystemEvent instance that is being processed.

Annotations
@Override
Exceptions
AbortProcessingException:
if lifecycle processing should cease for this request.