Java Doc for CachedXPathAPI.java in  » XML » xalan » org » apache » xpath » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » XML » xalan » org.apache.xpath 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   org.apache.xpath.CachedXPathAPI

CachedXPathAPI
public class CachedXPathAPI (Code)
The methods in this class are convenience methods into the low-level XPath API. These functions tend to be a little slow, since a number of objects must be created for each evaluation. A faster way is to precompile the XPaths using the low-level API, and then just use the XPaths over and over. This is an alternative for the old XPathAPI class, which provided static methods for the purpose but had the drawback of instantiating a new XPathContext (and thus building a new DTMManager, and new DTMs) each time it was called. XPathAPIObject instead retains its context as long as the object persists, reusing the DTMs. This does have a downside: if you've changed your source document, you should obtain a new XPathAPIObject to continue searching it, since trying to use the old DTMs will probably yield bad results or malfunction outright... and the cached DTMs may consume memory until this object and its context are returned to the heap. Essentially, it's the caller's responsibility to decide when to discard the cache.
See Also:    XPath Specification


Field Summary
protected  XPathContextxpathSupport
     XPathContext, and thus the document model system (DTMs), persists through multiple calls to this object.

Constructor Summary
public  CachedXPathAPI()
    

Default constructor.

public  CachedXPathAPI(CachedXPathAPI priorXPathAPI)
    

This constructor shares its XPathContext with a pre-existing CachedXPathAPI .


Method Summary
public  XObjecteval(Node contextNode, String str)
     Evaluate XPath string to an XObject.
public  XObjecteval(Node contextNode, String str, Node namespaceNode)
     Evaluate XPath string to an XObject.
public  XObjecteval(Node contextNode, String str, PrefixResolver prefixResolver)
     Evaluate XPath string to an XObject. XPath namespace prefixes are resolved from the namespaceNode. The implementation of this is a little slow, since it creates a number of objects each time it is called.
public  XPathContextgetXPathContext()
     Returns the XPathSupport object used in this CachedXPathAPI %REVIEW% I'm somewhat concerned about the loss of encapsulation this causes, but the xml-security folks say they need it.
public  NodeIteratorselectNodeIterator(Node contextNode, String str)
     Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the contextNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
public  NodeIteratorselectNodeIterator(Node contextNode, String str, Node namespaceNode)
     Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the namespaceNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
Parameters:
  namespaceNode - The node from which prefixes in the XPath will be resolved to namespaces.
public  NodeListselectNodeList(Node contextNode, String str)
     Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the contextNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
public  NodeListselectNodeList(Node contextNode, String str, Node namespaceNode)
     Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the namespaceNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
Parameters:
  namespaceNode - The node from which prefixes in the XPath will be resolved to namespaces.
public  NodeselectSingleNode(Node contextNode, String str)
     Use an XPath string to select a single node.
public  NodeselectSingleNode(Node contextNode, String str, Node namespaceNode)
     Use an XPath string to select a single node. XPath namespace prefixes are resolved from the namespaceNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
Parameters:
  namespaceNode - The node from which prefixes in the XPath will be resolved to namespaces.

Field Detail
xpathSupport
protected XPathContext xpathSupport(Code)
XPathContext, and thus the document model system (DTMs), persists through multiple calls to this object. This is set in the constructor.




Constructor Detail
CachedXPathAPI
public CachedXPathAPI()(Code)

Default constructor. Establishes its own XPathContext , and hence its own org.apache.xml.dtm.DTMManager . Good choice for simple uses.

Note that any particular instance of CachedXPathAPI must not be operated upon by multiple threads without synchronization; we do not currently support multithreaded access to a single org.apache.xml.dtm.DTM .




CachedXPathAPI
public CachedXPathAPI(CachedXPathAPI priorXPathAPI)(Code)

This constructor shares its XPathContext with a pre-existing CachedXPathAPI . That allows sharing document models ( org.apache.xml.dtm.DTM ) and previously established location state.

Note that the original CachedXPathAPI and the new one should not be operated upon concurrently; we do not support multithreaded access to a single org.apache.xml.dtm.DTM at this time. Similarly, any particular instance of CachedXPathAPI must not be operated upon by multiple threads without synchronization.

%REVIEW% Should this instead do a clone-and-reset on the XPathSupport object?





Method Detail
eval
public XObject eval(Node contextNode, String str) throws TransformerException(Code)
Evaluate XPath string to an XObject. Using this method, XPath namespace prefixes will be resolved from the namespaceNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string. An XObject, which can be used to obtain a string, number, nodelist, etc, should never be null.
See Also:   org.apache.xpath.objects.XObject
See Also:   org.apache.xpath.objects.XNull
See Also:   org.apache.xpath.objects.XBoolean
See Also:   org.apache.xpath.objects.XNumber
See Also:   org.apache.xpath.objects.XString
See Also:   org.apache.xpath.objects.XRTreeFrag
throws:
  TransformerException -



eval
public XObject eval(Node contextNode, String str, Node namespaceNode) throws TransformerException(Code)
Evaluate XPath string to an XObject. XPath namespace prefixes are resolved from the namespaceNode. The implementation of this is a little slow, since it creates a number of objects each time it is called. This could be optimized to keep the same objects around, but then thread-safety issues would arise.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
Parameters:
  namespaceNode - The node from which prefixes in the XPath will be resolved to namespaces. An XObject, which can be used to obtain a string, number, nodelist, etc, should never be null.
See Also:   org.apache.xpath.objects.XObject
See Also:   org.apache.xpath.objects.XNull
See Also:   org.apache.xpath.objects.XBoolean
See Also:   org.apache.xpath.objects.XNumber
See Also:   org.apache.xpath.objects.XString
See Also:   org.apache.xpath.objects.XRTreeFrag
throws:
  TransformerException -



eval
public XObject eval(Node contextNode, String str, PrefixResolver prefixResolver) throws TransformerException(Code)
Evaluate XPath string to an XObject. XPath namespace prefixes are resolved from the namespaceNode. The implementation of this is a little slow, since it creates a number of objects each time it is called. This could be optimized to keep the same objects around, but then thread-safety issues would arise.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
Parameters:
  prefixResolver - Will be called if the parser encounters namespaceprefixes, to resolve the prefixes to URLs. An XObject, which can be used to obtain a string, number, nodelist, etc, should never be null.
See Also:   org.apache.xpath.objects.XObject
See Also:   org.apache.xpath.objects.XNull
See Also:   org.apache.xpath.objects.XBoolean
See Also:   org.apache.xpath.objects.XNumber
See Also:   org.apache.xpath.objects.XString
See Also:   org.apache.xpath.objects.XRTreeFrag
throws:
  TransformerException -



getXPathContext
public XPathContext getXPathContext()(Code)
Returns the XPathSupport object used in this CachedXPathAPI %REVIEW% I'm somewhat concerned about the loss of encapsulation this causes, but the xml-security folks say they need it.



selectNodeIterator
public NodeIterator selectNodeIterator(Node contextNode, String str) throws TransformerException(Code)
Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the contextNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string. A NodeIterator, should never be null.
throws:
  TransformerException -



selectNodeIterator
public NodeIterator selectNodeIterator(Node contextNode, String str, Node namespaceNode) throws TransformerException(Code)
Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the namespaceNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
Parameters:
  namespaceNode - The node from which prefixes in the XPath will be resolved to namespaces. A NodeIterator, should never be null.
throws:
  TransformerException -



selectNodeList
public NodeList selectNodeList(Node contextNode, String str) throws TransformerException(Code)
Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the contextNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string. A NodeIterator, should never be null.
throws:
  TransformerException -



selectNodeList
public NodeList selectNodeList(Node contextNode, String str, Node namespaceNode) throws TransformerException(Code)
Use an XPath string to select a nodelist. XPath namespace prefixes are resolved from the namespaceNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
Parameters:
  namespaceNode - The node from which prefixes in the XPath will be resolved to namespaces. A NodeIterator, should never be null.
throws:
  TransformerException -



selectSingleNode
public Node selectSingleNode(Node contextNode, String str) throws TransformerException(Code)
Use an XPath string to select a single node. XPath namespace prefixes are resolved from the context node, which may not be what you want (see the next method).
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string. The first node found that matches the XPath, or null.
throws:
  TransformerException -



selectSingleNode
public Node selectSingleNode(Node contextNode, String str, Node namespaceNode) throws TransformerException(Code)
Use an XPath string to select a single node. XPath namespace prefixes are resolved from the namespaceNode.
Parameters:
  contextNode - The node to start searching from.
Parameters:
  str - A valid XPath string.
Parameters:
  namespaceNode - The node from which prefixes in the XPath will be resolved to namespaces. The first node found that matches the XPath, or null.
throws:
  TransformerException -



Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.