|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.cocoon.util.AbstractLogEnabled org.apache.cocoon.components.treeprocessor.sitemap.SitemapLanguage
The tree builder for the sitemap language.
Field Summary | |
protected Map |
attributes
|
protected List |
enterSitemapEventListeners
Optional event listeners for the enter sitemap event |
static String |
FIRST_POS_LABEL
Pseudo-label for views from-position="first" (i.e. |
protected org.apache.cocoon.components.pipeline.impl.PipelineComponentInfo |
itsComponentInfo
The sitemap component information grabbed while building itsMaanger |
protected String |
itsNamespace
The namespace of configuration for the processor that we are building. |
static String |
LAST_POS_LABEL
Pseudo-label for views from-position="last" (i.e. |
protected List |
leaveSitemapEventListeners
Optional event listeners for the leave sitemap event |
protected ConcreteTreeProcessor |
processor
The tree processor that we are building. |
Fields inherited from interface org.apache.cocoon.components.treeprocessor.TreeBuilder |
ROLE |
Constructor Summary | |
SitemapLanguage()
|
Method Summary | |
void |
addViewForLabel(String label,
String view)
Add a view for a label. |
ProcessingNode |
build(Configuration tree,
String location)
Build a processing tree from a Configuration . |
void |
contextualize(Context avalonContext)
|
ProcessingNodeBuilder |
createNodeBuilder(Configuration config)
|
protected ProcessingNode |
createTree(Configuration tree)
Create the tree once component manager and node builders have been set up. |
Object |
getAttribute(String name)
Get the value of an attribute. |
protected String |
getBuilderConfigURL()
Get the location of the treebuilder config file. |
List |
getDisposableNodes()
Return the list of ProcessingNodes part of this tree that
are Disposable . |
List |
getEnterSitemapEventListeners()
Return all event listers that are registered for the EnterSitemapEvent . |
Map |
getHintsForStatement(String role,
String hint,
Configuration statement)
Extract pipeline-hints from the given statement (if any exist) |
List |
getLeaveSitemapEventListeners()
Return all event listers that are registered for the LeaveSitemapEvent . |
protected org.apache.cocoon.util.location.LocationImpl |
getLocation(Configuration config)
|
String |
getMimeType(String role,
String hint)
Get the mime-type for a component (either a serializer or a reader) |
String |
getNamespace()
Get the namespace URI that builders should use to find their nodes. |
protected Map |
getParameters(Configuration config,
org.apache.cocoon.util.location.Location location)
Get <xxx:parameter> elements as a Map of ListOfMapResolvers,
that can be turned into parameters using ListOfMapResolver.buildParameters() . |
ConcreteTreeProcessor |
getProcessor()
|
ProcessingNode |
getRegisteredNode(String name)
|
String |
getTypeForStatement(Configuration statement,
String role)
Get the type for a statement : it returns the 'type' attribute if present, and otherwhise the default type defined for this role in the components declarations. |
Map |
getViewNodes(Collection viewNames)
Get the {view name, view node} map for a collection of view names. |
Collection |
getViewsForStatement(String role,
String hint,
Configuration statement)
Get the names of views for a given statement. |
WebApplicationContext |
getWebApplicationContext()
|
boolean |
isBuildingErrorHandler()
Are we currently building an error handler ? |
boolean |
isBuildingView()
Are we currently building a view ? |
protected void |
linkNodes()
Resolve links : call linkNode() on all
LinkedProcessingNodeBuilder s. |
void |
recycle()
|
protected void |
registerListeners()
Register all registered sitemap listeners |
boolean |
registerNode(String name,
ProcessingNode node)
Register a ProcessingNode under a given name. |
protected VariableResolver |
resolve(String expression)
Resolve expression using its manager |
void |
service(ServiceManager serviceManager)
|
void |
setAttribute(String name,
Object value)
Add an attribute. |
void |
setBuildingErrorHandler(boolean building)
Set to true while building the internals of a
<map:handle-errors> |
void |
setBuildingView(boolean building)
Set to true while building the internals of a
<map:view> |
void |
setProcessor(ConcreteTreeProcessor processor)
|
ProcessingNode |
setupNode(ProcessingNode node,
Configuration config)
Setup a ProcessingNode by setting its location, calling
all the lifecycle interfaces it implements and giving it the parameter
map if it's a ParameterizableNode . |
Methods inherited from class org.apache.cocoon.util.AbstractLogEnabled |
getLogger, setLogger |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected Map attributes
protected ConcreteTreeProcessor processor
protected String itsNamespace
protected org.apache.cocoon.components.pipeline.impl.PipelineComponentInfo itsComponentInfo
protected List enterSitemapEventListeners
protected List leaveSitemapEventListeners
public static final String FIRST_POS_LABEL
from-position="first"
(i.e.
generator).
public static final String LAST_POS_LABEL
from-position="last"
(i.e.
serializer).
Constructor Detail |
public SitemapLanguage()
Method Detail |
public void contextualize(Context avalonContext) throws ContextException
contextualize
in interface Contextualizable
ContextException
Contextualizable.contextualize(org.apache.avalon.framework.context.Context)
public void service(ServiceManager serviceManager) throws ServiceException
service
in interface Serviceable
ServiceException
Serviceable.service(org.apache.avalon.framework.service.ServiceManager)
protected String getBuilderConfigURL()
public void setAttribute(String name, Object value)
TreeBuilder
setAttribute
in interface TreeBuilder
TreeBuilder.setAttribute(java.lang.String,
java.lang.Object)
public Object getAttribute(String name)
TreeBuilder
getAttribute
in interface TreeBuilder
TreeBuilder.getAttribute(java.lang.String)
public void setProcessor(ConcreteTreeProcessor processor)
setProcessor
in interface TreeBuilder
TreeBuilder.setProcessor(ConcreteTreeProcessor)
public ConcreteTreeProcessor getProcessor()
getProcessor
in interface TreeBuilder
TreeBuilder.getProcessor()
public WebApplicationContext getWebApplicationContext()
getWebApplicationContext
in interface TreeBuilder
TreeBuilder.getWebApplicationContext()
public List getEnterSitemapEventListeners()
TreeBuilder
EnterSitemapEvent
.
getEnterSitemapEventListeners
in interface TreeBuilder
TreeBuilder.getEnterSitemapEventListeners()
public List getLeaveSitemapEventListeners()
TreeBuilder
LeaveSitemapEvent
.
getLeaveSitemapEventListeners
in interface TreeBuilder
TreeBuilder.getLeaveSitemapEventListeners()
public boolean registerNode(String name, ProcessingNode node)
TreeBuilder
ProcessingNode
under a given name.
For example, ResourceNodeBuilder
stores here the ProcessingNode
s
it produces for use by sitemap pipelines. This allows to turn the tree into a graph.
If a node with the name is already registed, the process fails!
registerNode
in interface TreeBuilder
true
is returned; otherwise false.TreeBuilder.registerNode(java.lang.String,
org.apache.cocoon.components.treeprocessor.ProcessingNode)
public ProcessingNode getRegisteredNode(String name)
getRegisteredNode
in interface TreeBuilder
TreeBuilder.getRegisteredNode(java.lang.String)
public ProcessingNodeBuilder createNodeBuilder(Configuration config) throws Exception
createNodeBuilder
in interface TreeBuilder
Exception
TreeBuilder.createNodeBuilder(org.apache.avalon.framework.configuration.Configuration)
protected ProcessingNode createTree(Configuration tree) throws Exception
Exception
protected void linkNodes() throws Exception
linkNode()
on all
LinkedProcessingNodeBuilder
s. Can be overriden by
subclasses to perform pre/post resolution operations.
Before linking nodes, lookup the view category node used in
getViewNodes(Collection)
.
Exception
public String getNamespace()
getNamespace
in interface TreeBuilder
public ProcessingNode build(Configuration tree, String location) throws Exception
Configuration
.
build
in interface TreeBuilder
Exception
public List getDisposableNodes()
ProcessingNodes
part of this tree that
are Disposable
. Care should be taken to properly dispose
them before trashing the processing tree.
getDisposableNodes
in interface TreeBuilder
public ProcessingNode setupNode(ProcessingNode node, Configuration config) throws Exception
ProcessingNode
by setting its location, calling
all the lifecycle interfaces it implements and giving it the parameter
map if it's a ParameterizableNode
.
As a convenience, the node is returned by this method to allow constructs
like return treeBuilder.setupNode(new MyNode(), config)
.
setupNode
in interface TreeBuilder
Exception
protected org.apache.cocoon.util.location.LocationImpl getLocation(Configuration config)
protected Map getParameters(Configuration config, org.apache.cocoon.util.location.Location location) throws ConfigurationException
Map
of ListOfMapResolvers,
that can be turned into parameters using ListOfMapResolver.buildParameters()
.
null
if there are
no parameters.
ConfigurationException
public String getTypeForStatement(Configuration statement, String role) throws ConfigurationException
getTypeForStatement
in interface TreeBuilder
statement
- the statementrole
- the component's role (warn: not the selector's role)
ConfigurationException
- if the type could not be found.protected VariableResolver resolve(String expression) throws org.apache.cocoon.sitemap.PatternException
org.apache.cocoon.sitemap.PatternException
public void recycle()
recycle
in interface Recyclable
protected void registerListeners()
public void setBuildingView(boolean building)
true
while building the internals of a
<map:view>
public boolean isBuildingView()
public void setBuildingErrorHandler(boolean building)
true
while building the internals of a
<map:handle-errors>
public boolean isBuildingErrorHandler()
public void addViewForLabel(String label, String view)
label
- the label (or pseudo-label) for the viewview
- the view namepublic Collection getViewsForStatement(String role, String hint, Configuration statement) throws Exception
role
- the component role (e.g. Generator.ROLE
)hint
- the component hint, i.e. the 'type' attributestatement
- the sitemap statement
Exception
public Map getViewNodes(Collection viewNames) throws Exception
viewNames
- the view names
Exception
public Map getHintsForStatement(String role, String hint, Configuration statement) throws Exception
role
- the component role (e.g. Generator.ROLE
)hint
- the component hint, i.e. the 'type' attributestatement
- the sitemap statement
Map
for this statement, or null if
none exist
Exception
public String getMimeType(String role, String hint)
role
- the component role (e.g. Serializer.ROLE
)hint
- the component hint, i.e. the 'type' attribute
null
if none was set
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |