org.apache.cocoon.components.modules.input
Class XPathXMLFileModule
java.lang.Object
org.apache.cocoon.util.AbstractLogEnabled
org.apache.cocoon.components.modules.input.AbstractInputModule
org.apache.cocoon.components.modules.input.XPathXMLFileModule
- All Implemented Interfaces:
- Configurable, Disposable, org.apache.cocoon.components.modules.input.InputModule, Serviceable, ThreadSafe
- public class XPathXMLFileModule
- extends org.apache.cocoon.components.modules.input.AbstractInputModule
- implements Serviceable, ThreadSafe
[
]
[
]
This module provides an Input Module interface to any XML document, by using
XPath expressions as attribute keys.
The XML can be obtained from any Cocoon Source
(e.g.,
cocoon:/...
, context://..
, and regular URLs).
Sources can be cached in memory for better performance and reloaded if
changed. The source can also contain references to other input modules to allow the source
file name to be determined dynamically.
Caching and reloading can be turned on / off (default: caching on,
reloading off) through <reloadable>false</reloadable>
and <cacheable>false</cacheable>
. The file
(source) to use is specified through <file
src="protocol:path/to/file.xml" reloadable="true" cacheable="true"/>
optionally overriding the defaults for caching and/or reloading. When specfied as attributes
to the file element the values for cacheable and reloadable may be input module references which
will be resolved on every call. These must resolve to 'true' or 'false'.
>
The XML documents will be cached using the Store configured via the cache-role configuration
element. If not specified the default Store as specified in this classes ROLE attribute will
be used.
In addition, xpath expressions can be cached for higher performance.
Thus, if an expression has been evaluated for a file, the result
is cached and will be reused, the expression is not evaluated
a second time. This can be turned off using the cache-expressions
configuration option.
- Version:
- $Id: XPathXMLFileModule.html 1304280 2012-03-23 11:18:01Z ilgrosso $
Fields inherited from class org.apache.cocoon.components.modules.input.AbstractInputModule |
settings |
Methods inherited from class org.apache.cocoon.components.modules.input.AbstractInputModule |
getAttributeNames |
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 |
ROLE
public static final String ROLE
configuration
protected org.apache.cocoon.components.modules.input.JXPathHelperConfiguration configuration
- Contains all globally registered extension classes and
packages. Thus the lookup and loading of globally registered
extensions is done only once.
parameter
protected String parameter
- Overrides attribute name
resolver
protected SourceResolver resolver
manager
protected ServiceManager manager
XPathXMLFileModule
public XPathXMLFileModule()
service
public void service(ServiceManager manager)
throws ServiceException
- Specified by:
service
in interface Serviceable
- Throws:
ServiceException
configure
public void configure(Configuration config)
throws ConfigurationException
- Static (cocoon.xconf) configuration.
Configuration is expected to be of the form:
<...>
<reloadable>true|false</reloadable>
<cacheable>true|false</cacheable>
<cache-role>org.apache.excalibur.store.Store/TransientStore</cache-role>
<file src="src"/>
...
</...>
The <file/> element specifies a file pattern. Only one
<file> can be specified, however it can contain references to input modules which will be resolved
each time the module is used. The configured src is used if not
overridden via a file parameter in the sitemap.
- Specified by:
configure
in interface Configurable
- Parameters:
config
- a Configuration
value, as described above.
- Throws:
ConfigurationException
- if an error occurs
dispose
public void dispose()
- Dispose this component
- Specified by:
dispose
in interface Disposable
getAttribute
public Object getAttribute(String name,
Configuration modeConf,
Map objectModel)
throws ConfigurationException
- Specified by:
getAttribute
in interface org.apache.cocoon.components.modules.input.InputModule
- Throws:
ConfigurationException
getAttributeValues
public Object[] getAttributeValues(String name,
Configuration modeConf,
Map objectModel)
throws ConfigurationException
- Specified by:
getAttributeValues
in interface org.apache.cocoon.components.modules.input.InputModule
- Throws:
ConfigurationException
Copyright © 1999-2008 The Apache Software Foundation. All Rights Reserved.