Class AbstractFactory

java.lang.Object
org.apache.commons.jxpath.AbstractFactory

public abstract class AbstractFactory extends Object
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 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 created
      parent - is the object that will serve as a parent of the new object
      name - 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

      public boolean declareVariable(JXPathContext context, String name)
      Declare the specified variable
      Parameters:
      context - hosts variable pools. See JXPathContext.getVariables()
      name - is the name of the variable without the "$" sign
      Returns:
      true if the variable was successfully defined