com.ximpleware.extended
Class AutoPilotHuge

java.lang.Object
  extended by com.ximpleware.extended.AutoPilotHuge

public class AutoPilotHuge
extends Object

XimpleWare's AutoPilotHuge implementation encapsulating node iterator and XPath. AutoPilotHuge is an extended VTD edition of AutoPilot supporting 256 GigByte XML file


Field Summary
static int ATTR
           
static int ATTR_NS
           
static int DESCENDANT
           
static int DESCENDANT_NS
           
static int FOLLOWING
           
static int FOLLOWING_NS
           
static int PRECEDING
           
static int PRECEDING_NS
           
static int SIMPLE
           
static int SIMPLE_NS
           
static int UNDEFINED
           
 
Constructor Summary
AutoPilotHuge()
          Use this constructor for delayed binding to VTDNavHuge which allows the reuse of XPath expression
AutoPilotHuge(VTDNavHuge v)
          AutoPilotHuge constructor comment.
 
Method Summary
 void bind(VTDNavHuge vnv)
          Bind resets the internal state of AutoPilotHuge so one can attach a VTDNavHuge object to the autopilot
 void clearVariableExprs()
          Remove all declared variable expressions
 void clearXPathNameSpaces()
          Remove all namespaces bindings
 void declareVariableExpr(String varName, String varExpr)
          Register the binding between a variableExpr name and variableExpr expression
 void declareXPathNameSpace(String prefix, String URL)
          This function creates URL ns prefix and is intended to be called prior to selectXPath
 int evalXPath()
          This method returns the next node in the nodeset it returns -1 if there is no more node Afer finishing evaluating, don't forget to reset the xpath
 boolean evalXPathToBoolean()
          evalXPathToBoolean() evaluates the xpath expression to a boolean
 double evalXPathToNumber()
          evalXPathToNumber() evaluates the xpath expression to a double
 String evalXPathToString()
          evalXPathToString() evaluates the xpath expression to a String
 String getExprString()
          Convert the expression to a string For debugging purpose
protected  String getName()
           
 boolean iterate()
          Iterate over all the selected element nodes in document order.
protected  int iterateAttr()
          This method implements the attribute axis for XPath
 void resetXPath()
          Reset the XPath so the XPath Expression can be reused and revaluated in anther context position
protected  void selectAttr(String en)
          Select an attribute name for iteration, * choose all attributes of an element
protected  void selectAttrNS(String ns_URL, String ln)
          Select an attribute name, both local part and namespace URL part
protected  void selectElement_D(String en)
          Select all descendent elements along the descendent axis, without ns awareness
protected  void selectElement_F(String en)
          Select all elements along the following axis, without ns, null selects every elements and documents
protected  void selectElement_P(String en)
          Select all elements along the preceding axis as defined in XPath
 void selectElement(String en)
          Select the element name before iterating. "*" matches every element Creation date: (12/4/03 5:51:31 PM)
protected  void selectElementNS_D(String ns_URL, String ln)
          Select all descendent elements along the Descendent axis, withns awareness
protected  void selectElementNS_F(String ns_URL, String ln)
          Select all elements along the preceding axis as defined in XPath The namespace-aware version
protected  void selectElementNS_P(String ns_URL, String ln)
          Select all elements along the preceding axis as defined in XPath This is the namespace aware version
 void selectElementNS(String ns_URL, String ln)
          Select the element name (name space version) before iterating.
 void selectXPath(String s)
          This method selects the string representing XPath expression Usually evalXPath is called afterwards
protected  void setSpecial(boolean b)
          Setspecial is used by XPath evaluator to distinguish between node() and * node() corresponding to b= true;
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

UNDEFINED

public static final int UNDEFINED
See Also:
Constant Field Values

SIMPLE

public static final int SIMPLE
See Also:
Constant Field Values

SIMPLE_NS

public static final int SIMPLE_NS
See Also:
Constant Field Values

DESCENDANT

public static final int DESCENDANT
See Also:
Constant Field Values

DESCENDANT_NS

public static final int DESCENDANT_NS
See Also:
Constant Field Values

FOLLOWING

public static final int FOLLOWING
See Also:
Constant Field Values

FOLLOWING_NS

public static final int FOLLOWING_NS
See Also:
Constant Field Values

PRECEDING

public static final int PRECEDING
See Also:
Constant Field Values

PRECEDING_NS

public static final int PRECEDING_NS
See Also:
Constant Field Values

ATTR

public static final int ATTR
See Also:
Constant Field Values

ATTR_NS

public static final int ATTR_NS
See Also:
Constant Field Values
Constructor Detail

AutoPilotHuge

public AutoPilotHuge(VTDNavHuge v)
AutoPilotHuge constructor comment.

Throws:
IllegalArgumentException - If the VTDNav object is null

AutoPilotHuge

public AutoPilotHuge()
Use this constructor for delayed binding to VTDNavHuge which allows the reuse of XPath expression

Method Detail

getName

protected String getName()

declareXPathNameSpace

public void declareXPathNameSpace(String prefix,
                                  String URL)
This function creates URL ns prefix and is intended to be called prior to selectXPath

Parameters:
prefix -
URL -

bind

public void bind(VTDNavHuge vnv)
Bind resets the internal state of AutoPilotHuge so one can attach a VTDNavHuge object to the autopilot

Parameters:
vnv -

declareVariableExpr

public void declareVariableExpr(String varName,
                                String varExpr)
                         throws XPathParseExceptionHuge
Register the binding between a variableExpr name and variableExpr expression

Parameters:
varName -
varExpr -
Throws:
XPathParseException
XPathParseExceptionHuge

iterate

public boolean iterate()
                throws PilotExceptionHuge,
                       NavExceptionHuge
Iterate over all the selected element nodes in document order. Null element name allowed, corresponding to node() in xpath Creation date: (12/4/03 5:25:42 PM)

Returns:
boolean
Throws:
NavExceptionHuge - See description in method toElement() in VTDNavHuge class.
PilotExceptionHuge

iterateAttr

protected int iterateAttr()
                   throws PilotExceptionHuge,
                          NavExceptionHuge
This method implements the attribute axis for XPath

Returns:
the integer of the selected VTD index for attribute name
Throws:
PilotException
PilotExceptionHuge
NavExceptionHuge

selectElement

public void selectElement(String en)
Select the element name before iterating. "*" matches every element Creation date: (12/4/03 5:51:31 PM)

Parameters:
en - java.lang.String

selectElementNS

public void selectElementNS(String ns_URL,
                            String ln)
Select the element name (name space version) before iterating. URL, if set to *, matches every namespace URL, if set to null, indicates the namespace is undefined. localname, if set to *, matches any localname Creation date: (12/4/03 6:05:19 PM)

Parameters:
ns_URL - String
ln - String

selectElement_D

protected void selectElement_D(String en)
Select all descendent elements along the descendent axis, without ns awareness

Parameters:
en -

selectElementNS_D

protected void selectElementNS_D(String ns_URL,
                                 String ln)
Select all descendent elements along the Descendent axis, withns awareness

Parameters:
ns_URL -
ln -

selectElement_F

protected void selectElement_F(String en)
Select all elements along the following axis, without ns, null selects every elements and documents

Parameters:
en -

selectElementNS_F

protected void selectElementNS_F(String ns_URL,
                                 String ln)
Select all elements along the preceding axis as defined in XPath The namespace-aware version

Parameters:
en -

selectElement_P

protected void selectElement_P(String en)
Select all elements along the preceding axis as defined in XPath

Parameters:
en -

selectElementNS_P

protected void selectElementNS_P(String ns_URL,
                                 String ln)
Select all elements along the preceding axis as defined in XPath This is the namespace aware version

Parameters:
ns_URL -
ln -

selectAttr

protected void selectAttr(String en)
Select an attribute name for iteration, * choose all attributes of an element

Parameters:
en -

selectAttrNS

protected void selectAttrNS(String ns_URL,
                            String ln)
Select an attribute name, both local part and namespace URL part

Parameters:
ns_URL -
ln -

selectXPath

public void selectXPath(String s)
                 throws XPathParseExceptionHuge
This method selects the string representing XPath expression Usually evalXPath is called afterwards

Parameters:
s -
Throws:
XPathParseException
XPathParseExceptionHuge

resetXPath

public void resetXPath()
Reset the XPath so the XPath Expression can be reused and revaluated in anther context position


evalXPathToNumber

public double evalXPathToNumber()
evalXPathToNumber() evaluates the xpath expression to a double

Returns:
double

evalXPathToString

public String evalXPathToString()
evalXPathToString() evaluates the xpath expression to a String

Returns:
String

evalXPathToBoolean

public boolean evalXPathToBoolean()
evalXPathToBoolean() evaluates the xpath expression to a boolean

Returns:
boolean

evalXPath

public int evalXPath()
              throws XPathEvalExceptionHuge,
                     NavExceptionHuge
This method returns the next node in the nodeset it returns -1 if there is no more node Afer finishing evaluating, don't forget to reset the xpath

Returns:
int corresponding to the VTD index
Throws:
XPathEvalExceptionHuge
NavExceptionHuge

setSpecial

protected void setSpecial(boolean b)
Setspecial is used by XPath evaluator to distinguish between node() and * node() corresponding to b= true;

Parameters:
b -

getExprString

public String getExprString()
Convert the expression to a string For debugging purpose

Returns:
String

clearVariableExprs

public void clearVariableExprs()
Remove all declared variable expressions


clearXPathNameSpaces

public void clearXPathNameSpaces()
Remove all namespaces bindings



Copyright © 2013. All Rights Reserved.