Package org.htmlunit.xpath.axes
Class IteratorPool
- java.lang.Object
-
- org.htmlunit.xpath.axes.IteratorPool
-
public final class IteratorPool extends java.lang.Object
Pool of object of a given type to pick from to help memory usage
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.ArrayList<DTMIterator>
m_freeStack
Stack of given objects this points to.private DTMIterator
m_orig
Type of objects in this pool.
-
Constructor Summary
Constructors Constructor Description IteratorPool(DTMIterator original)
Constructor IteratorPool
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
freeInstance(DTMIterator obj)
Add an instance of the given object to the poolDTMIterator
getInstance()
Get an instance of the given object in this poolDTMIterator
getInstanceOrThrow()
Get an instance of the given object in this pool
-
-
-
Field Detail
-
m_orig
private final DTMIterator m_orig
Type of objects in this pool.
-
m_freeStack
private final java.util.ArrayList<DTMIterator> m_freeStack
Stack of given objects this points to.
-
-
Constructor Detail
-
IteratorPool
public IteratorPool(DTMIterator original)
Constructor IteratorPool- Parameters:
original
- The original iterator from which all others will be cloned.
-
-
Method Detail
-
getInstanceOrThrow
public DTMIterator getInstanceOrThrow() throws java.lang.CloneNotSupportedException
Get an instance of the given object in this pool- Returns:
- An instance of the given object
- Throws:
java.lang.CloneNotSupportedException
-
getInstance
public DTMIterator getInstance()
Get an instance of the given object in this pool- Returns:
- An instance of the given object
-
freeInstance
public void freeInstance(DTMIterator obj)
Add an instance of the given object to the pool- Parameters:
obj
- Object to add.
-
-