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 TypeMethodDescriptionbooleancreateObject(JXPathContext context, Pointer pointer, Object parent, String name, int index) The parameters may describe a collection element or an individual object.booleandeclareVariable(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
-