Class DocumentPool

  • All Implemented Interfaces:
    java.io.Serializable

    public final class DocumentPool
    extends java.lang.Object
    implements java.io.Serializable
    An object representing the collection of documents handled during a single transformation.

    The function of allocating document numbers is performed by the DocumentNumberAllocator in the Configuration, not by the DocumentPool. This has a number of effects: in particular it allows operations involving multiple documents (such as generateId() and document()) to occur in a free-standing XPath environment.

    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      DocumentPool()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void add​(DocumentInfo doc, java.lang.String uri)
      Add a document to the pool
      DocumentInfo discard​(DocumentInfo doc)
      Release a document from the document pool.
      DocumentInfo find​(java.lang.String uri)
      Get the document with a given document-uri
      java.lang.String getDocumentURI​(NodeInfo doc)
      Get the URI for a given document node, if it is present in the pool.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DocumentPool

        public DocumentPool()
    • Method Detail

      • add

        public void add​(DocumentInfo doc,
                        java.lang.String uri)
        Add a document to the pool
        Parameters:
        doc - The DocumentInfo for the document in question
        uri - The document-uri property of the document.
      • find

        public DocumentInfo find​(java.lang.String uri)
        Get the document with a given document-uri
        Parameters:
        uri - The document-uri property of the document.
        Returns:
        the DocumentInfo with the given document-uri property if it exists, or null if it is not found.
      • getDocumentURI

        public java.lang.String getDocumentURI​(NodeInfo doc)
        Get the URI for a given document node, if it is present in the pool. This supports the document-uri() function.
        Parameters:
        doc - The document node
        Returns:
        The uri of the document node, if present in the pool, or the systemId of the document node otherwise
      • discard

        public DocumentInfo discard​(DocumentInfo doc)
        Release a document from the document pool. This means that if the same document is loaded again later, the source will need to be re-parsed, and nodes will get new identities.
        Parameters:
        doc - the document to be discarded from the pool
        Returns:
        the document supplied in the doc parameter