com.icl.saxon.om

Class DocumentPool

public final class DocumentPool extends Object

An object representing the collection of documents handled during a single transformation

Author: Michael H. Kay

Method Summary
intadd(DocumentInfo doc, String name)
Add a document to the pool, and allocate a document number
DocumentInfofind(String name)
Get the document with a given name
intgetDocumentNumber(DocumentInfo doc)
Get the document number of a document that is already in the pool.
intgetNumberOfDocuments()
Get the number of documents in the pool

Method Detail

add

public int add(DocumentInfo doc, String name)
Add a document to the pool, and allocate a document number

Parameters: doc The DocumentInfo for the document in question name The name of the document. May be null, in the case of the principal source document or a result tree fragment. Used for the URI of a document loaded using the document() function.

Returns: the document number, unique within this document pool

find

public DocumentInfo find(String name)
Get the document with a given name

Returns: the DocumentInfo with the given name if it exists, or null if it is not found.

getDocumentNumber

public int getDocumentNumber(DocumentInfo doc)
Get the document number of a document that is already in the pool. If the document is not already in the pool, it is added, and a document number is allocated. (This can happen when a Java application has built the document independently of the Controller. In this case, it is still necessary that all documents use the same NamePool, but we don't actually check this).

Returns: the document number

getNumberOfDocuments

public int getNumberOfDocuments()
Get the number of documents in the pool