Class ConfigurationNodePointerFactory
- java.lang.Object
-
- org.apache.commons.configuration2.tree.xpath.ConfigurationNodePointerFactory
-
- All Implemented Interfaces:
org.apache.commons.jxpath.ri.model.NodePointerFactory
public class ConfigurationNodePointerFactory extends Object implements org.apache.commons.jxpath.ri.model.NodePointerFactory
Implementation of the
NodePointerFactoryinterface for configuration nodes.This class is able to create
NodePointers for the nodes of hierarchical configurations. Because there is no common base class for configuration nodes (any specific configuration implementation can use its own node class) a trick is needed for activating this factory for a concrete JXPath query: ThewrapNode()method has to be called with the node object and its correspondingNodeHandler. This creates a wrapper object containing all information required by the factory for processing a query. Then this wrapper object has to be passed to the query methods of the JXPath context.- Since:
- 1.3
-
-
Field Summary
Fields Modifier and Type Field Description static intCONFIGURATION_NODE_POINTER_FACTORY_ORDERConstant for the order of this factory.
-
Constructor Summary
Constructors Constructor Description ConfigurationNodePointerFactory()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.commons.jxpath.ri.model.NodePointercreateNodePointer(org.apache.commons.jxpath.ri.model.NodePointer parent, org.apache.commons.jxpath.ri.QName name, Object bean)Creates a node pointer for the specified bean.org.apache.commons.jxpath.ri.model.NodePointercreateNodePointer(org.apache.commons.jxpath.ri.QName name, Object bean, Locale locale)Creates a node pointer for the specified bean.intgetOrder()Gets the order of this factory between other factories.static <T> ObjectwrapNode(T node, NodeHandler<T> handler)Creates a node wrapper for the specified node and its handler.
-
-
-
Field Detail
-
CONFIGURATION_NODE_POINTER_FACTORY_ORDER
public static final int CONFIGURATION_NODE_POINTER_FACTORY_ORDER
Constant for the order of this factory.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ConfigurationNodePointerFactory
public ConfigurationNodePointerFactory()
-
-
Method Detail
-
getOrder
public int getOrder()
Gets the order of this factory between other factories.- Specified by:
getOrderin interfaceorg.apache.commons.jxpath.ri.model.NodePointerFactory- Returns:
- this order's factory
-
createNodePointer
public org.apache.commons.jxpath.ri.model.NodePointer createNodePointer(org.apache.commons.jxpath.ri.QName name, Object bean, Locale locale)
Creates a node pointer for the specified bean. If the bean is a configuration node (indicated by a wrapper object), a corresponding pointer is returned.- Specified by:
createNodePointerin interfaceorg.apache.commons.jxpath.ri.model.NodePointerFactory- Parameters:
name- the name of the nodebean- the beanlocale- the locale- Returns:
- a pointer for a configuration node if the bean is such a node
-
createNodePointer
public org.apache.commons.jxpath.ri.model.NodePointer createNodePointer(org.apache.commons.jxpath.ri.model.NodePointer parent, org.apache.commons.jxpath.ri.QName name, Object bean)
Creates a node pointer for the specified bean. If the bean is a configuration node, a corresponding pointer is returned.- Specified by:
createNodePointerin interfaceorg.apache.commons.jxpath.ri.model.NodePointerFactory- Parameters:
parent- the parent nodename- the namebean- the bean- Returns:
- a pointer for a configuration node if the bean is such a node
-
wrapNode
public static <T> Object wrapNode(T node, NodeHandler<T> handler)
Creates a node wrapper for the specified node and its handler. This wrapper has to be passed to the JXPath context instead of the original node.- Type Parameters:
T- the type of the node- Parameters:
node- the nodehandler- the corresponding node handler- Returns:
- a wrapper for this node
-
-