Package org.apache.commons.jxpath
Class AbstractFactory
java.lang.Object
org.apache.commons.jxpath.AbstractFactory
The
JXPathContext.createPath()
method of JXPathContext can create missing objects as it traverses an XPath; it utilizes an
AbstractFactory for that purpose. Install a factory on JXPathContext by calling JXPathContext. setFactory()
.
All methods of this class return false. Override any of them to return true to indicate that the factory has successfully created the described object.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
createObject
(JXPathContext context, Pointer pointer, Object parent, String name, int index) The parameters may describe a collection element or an individual object.boolean
declareVariable
(JXPathContext context, String name) Declare the specified variable
-
Constructor Details
-
AbstractFactory
public AbstractFactory()Constructs a new instance for subclasses.
-
-
Method Details
-
createObject
public boolean createObject(JXPathContext context, Pointer pointer, Object parent, String name, int index) The parameters may describe a collection element or an individual object. It is up to the factory to infer which one it is. If it is a collection, the factory should check if the collection exists. If not, it should create the collection. Then it should create the index'th element of the collection and return true.- Parameters:
context
- can be used to evaluate other XPaths, get to variables etc.pointer
- describes the location of the node to be createdparent
- is the object that will serve as a parent of the new objectname
- is the name of the child of the parent that needs to be created. In the case of DOM may be qualified.index
- is used if the pointer represents a collection element. You may need to expand or even create the collection to accommodate the new element.- Returns:
- true if the object was successfully created
-
declareVariable
Declare the specified variable- Parameters:
context
- hosts variable pools. SeeJXPathContext.getVariables()
name
- is the name of the variable without the "$" sign- Returns:
- true if the variable was successfully defined
-