org.apache.xalan.xsltc.dom

## Class XSLTCDTMManager

- java.lang.Object
- - org.apache.xml.dtm.DTMManager
  - - org.apache.xml.dtm.ref.DTMManagerDefault
    - - org.apache.xalan.xsltc.dom.XSLTCDTMManager

    public class XSLTCDTMManager
    extends DTMManagerDefault

The default implementation for the DTMManager.

### Field Summary

### Fields inherited from class org.apache.xml.dtm.DTMManager

`IDENT_DTM_DEFAULT, IDENT_DTM_NODE_BITS, IDENT_MAX_DTMS, IDENT_NODE_DEFAULT, m_incremental, m_source_location`

### Constructor Summary

Constructors
Constructor and Description
`XSLTCDTMManager()` Constructor DTMManagerDefault

### Method Summary

Methods
`DTM` `getDTM(Source source, boolean unique, DTMWSFilter whiteSpaceFilter, boolean incremental, boolean doIndexing)` Get an instance of a DTM, loaded with the content from the specified source.
`DTM` `getDTM(Source source, boolean unique, DTMWSFilter whiteSpaceFilter, boolean incremental, boolean doIndexing, boolean buildIdIndex)` Get an instance of a DTM, loaded with the content from the specified source.
`DTM` `getDTM(Source source, boolean unique, DTMWSFilter whiteSpaceFilter, boolean incremental, boolean doIndexing, boolean buildIdIndex, boolean newNameTable)` Get an instance of a DTM, loaded with the content from the specified source.
`DTM` `getDTM(Source source, boolean unique, DTMWSFilter whiteSpaceFilter, boolean incremental, boolean doIndexing, boolean hasUserReader, int size, boolean buildIdIndex)` Get an instance of a DTM, loaded with the content from the specified source.
`DTM` `getDTM(Source source, boolean unique, DTMWSFilter whiteSpaceFilter, boolean incremental, boolean doIndexing, boolean hasUserReader, int size, boolean buildIdIndex, boolean newNameTable)` Get an instance of a DTM, loaded with the content from the specified source.
`static java.lang.Class` `getDTMManagerClass()` Look up the class that provides the XSLTC DTM Manager service.
`static XSLTCDTMManager` `newInstance()` Obtain a new instance of a `DTMManager`.

### Methods inherited from class org.apache.xml.dtm.ref.DTMManagerDefault

`addDTM, addDTM, createDocumentFragment, createDTMIterator, createDTMIterator, createDTMIterator, createDTMIterator, getDTM, getDTMHandleFromNode, getDTMIdentity, getExpandedNameTable, getFirstFreeDTMID, getXMLReader, release, releaseXMLReader`

### Methods inherited from class org.apache.xml.dtm.DTMManager

`getDTMIdentityMask, getIncremental, getNodeIdentityMask, getSource_location, getXMLStringFactory, newInstance, setIncremental, setSource_location, setXMLStringFactory`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### XSLTCDTMManager

    public XSLTCDTMManager()

Constructor DTMManagerDefault

### Method Detail

#### newInstance

    public static XSLTCDTMManager newInstance()

Obtain a new instance of a `DTMManager`. This static method creates a new factory instance. The current implementation just returns a new XSLTCDTMManager instance.

#### getDTMManagerClass

    public static java.lang.Class getDTMManagerClass()

Look up the class that provides the XSLTC DTM Manager service. The following lookup procedure is used to find the service provider.

1. The value of the `org.apache.xalan.xsltc.dom.XSLTCDTMManager` property, is checked.
2. The `xalan.propeties` file is checked for a property of the same name.
3. The `META-INF/services/org.apache.xalan.xsltc.dom.XSLTCDTMManager` file is checked.

The default is `org.apache.xalan.xsltc.dom.XSLTCDTMManager`.

#### getDTM

    public DTM getDTM(Source source,
             boolean unique,
             DTMWSFilter whiteSpaceFilter,
             boolean incremental,
             boolean doIndexing)

Get an instance of a DTM, loaded with the content from the specified source. If the unique flag is true, a new instance will always be returned. Otherwise it is up to the DTMManager to return a new instance or an instance that it already created and may be being used by someone else. (I think more parameters will need to be added for error handling, and entity resolution).

Overrides:
  `getDTM` in class `DTMManagerDefault`
Parameters:
  `source` - the specification of the source object.
  `unique` - true if the returned DTM must be unique, probably because it is going to be mutated.
  `whiteSpaceFilter` - Enables filtering of whitespace nodes, and may be null.
  `incremental` - true if the DTM should be built incrementally, if possible.
  `doIndexing` - true if the caller considers it worth it to use indexing schemes.
Returns:
  a non-null DTM reference.

#### getDTM

    public DTM getDTM(Source source,
             boolean unique,
             DTMWSFilter whiteSpaceFilter,
             boolean incremental,
             boolean doIndexing,
             boolean buildIdIndex)

Get an instance of a DTM, loaded with the content from the specified source. If the unique flag is true, a new instance will always be returned. Otherwise it is up to the DTMManager to return a new instance or an instance that it already created and may be being used by someone else. (I think more parameters will need to be added for error handling, and entity resolution).

Parameters:
  `source` - the specification of the source object.
  `unique` - true if the returned DTM must be unique, probably because it is going to be mutated.
  `whiteSpaceFilter` - Enables filtering of whitespace nodes, and may be null.
  `incremental` - true if the DTM should be built incrementally, if possible.
  `doIndexing` - true if the caller considers it worth it to use indexing schemes.
  `buildIdIndex` - true if the id index table should be built.
Returns:
  a non-null DTM reference.

#### getDTM

    public DTM getDTM(Source source,
             boolean unique,
             DTMWSFilter whiteSpaceFilter,
             boolean incremental,
             boolean doIndexing,
             boolean buildIdIndex,
             boolean newNameTable)

Get an instance of a DTM, loaded with the content from the specified source. If the unique flag is true, a new instance will always be returned. Otherwise it is up to the DTMManager to return a new instance or an instance that it already created and may be being used by someone else. (I think more parameters will need to be added for error handling, and entity resolution).

Parameters:
  `source` - the specification of the source object.
  `unique` - true if the returned DTM must be unique, probably because it is going to be mutated.
  `whiteSpaceFilter` - Enables filtering of whitespace nodes, and may be null.
  `incremental` - true if the DTM should be built incrementally, if possible.
  `doIndexing` - true if the caller considers it worth it to use indexing schemes.
  `buildIdIndex` - true if the id index table should be built.
  `newNameTable` - true if we want to use a separate ExpandedNameTable for this DTM.
Returns:
  a non-null DTM reference.

#### getDTM

    public DTM getDTM(Source source,
             boolean unique,
             DTMWSFilter whiteSpaceFilter,
             boolean incremental,
             boolean doIndexing,
             boolean hasUserReader,
             int size,
             boolean buildIdIndex)

Get an instance of a DTM, loaded with the content from the specified source. If the unique flag is true, a new instance will always be returned. Otherwise it is up to the DTMManager to return a new instance or an instance that it already created and may be being used by someone else. (I think more parameters will need to be added for error handling, and entity resolution).

Parameters:
  `source` - the specification of the source object.
  `unique` - true if the returned DTM must be unique, probably because it is going to be mutated.
  `whiteSpaceFilter` - Enables filtering of whitespace nodes, and may be null.
  `incremental` - true if the DTM should be built incrementally, if possible.
  `doIndexing` - true if the caller considers it worth it to use indexing schemes.
  `hasUserReader` - true if `source` is a `SAXSource` object that has an `XMLReader`, that was specified by the user.
  `size` - Specifies initial size of tables that represent the DTM
  `buildIdIndex` - true if the id index table should be built.
Returns:
  a non-null DTM reference.

#### getDTM

    public DTM getDTM(Source source,
             boolean unique,
             DTMWSFilter whiteSpaceFilter,
             boolean incremental,
             boolean doIndexing,
             boolean hasUserReader,
             int size,
             boolean buildIdIndex,
             boolean newNameTable)

Get an instance of a DTM, loaded with the content from the specified source. If the unique flag is true, a new instance will always be returned. Otherwise it is up to the DTMManager to return a new instance or an instance that it already created and may be being used by someone else. (I think more parameters will need to be added for error handling, and entity resolution).

Parameters:
  `source` - the specification of the source object.
  `unique` - true if the returned DTM must be unique, probably because it is going to be mutated.
  `whiteSpaceFilter` - Enables filtering of whitespace nodes, and may be null.
  `incremental` - true if the DTM should be built incrementally, if possible.
  `doIndexing` - true if the caller considers it worth it to use indexing schemes.
  `hasUserReader` - true if `source` is a `SAXSource` object that has an `XMLReader`, that was specified by the user.
  `size` - Specifies initial size of tables that represent the DTM
  `buildIdIndex` - true if the id index table should be built.
  `newNameTable` - true if we want to use a separate ExpandedNameTable for this DTM.
Returns:
  a non-null DTM reference.