org.apache.xml.utils

## Class ObjectPool

- java.lang.Object
- - org.apache.xml.utils.ObjectPool

All Implemented Interfaces:
  java.io.Serializable

    public class ObjectPool
    extends java.lang.Object
    implements java.io.Serializable

Pool of object of a given type to pick from to help memory usage

See Also:
  Serialized Form
Usage:
  **For internal use only**

### Constructor Summary

Constructors
Constructor and Description
`ObjectPool()` Constructor ObjectPool
`ObjectPool(java.lang.Class type)` Constructor ObjectPool
`ObjectPool(java.lang.Class type, int size)` Constructor ObjectPool
`ObjectPool(java.lang.String className)` Constructor ObjectPool

### Method Summary

Methods
`void` `freeInstance(java.lang.Object obj)` Add an instance of the given object to the pool
`java.lang.Object` `getInstance()` Get an instance of the given object in this pool
`java.lang.Object` `getInstanceIfFree()` Get an instance of the given object in this pool if available

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

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

### Constructor Detail

#### ObjectPool

    public ObjectPool(java.lang.Class type)

Constructor ObjectPool

Parameters:
  `type` - Type of objects for this pool

#### ObjectPool

    public ObjectPool(java.lang.String className)

Constructor ObjectPool

Parameters:
  `className` - Fully qualified name of the type of objects for this pool.

#### ObjectPool

    public ObjectPool(java.lang.Class type,
              int size)

Constructor ObjectPool

Parameters:
  `type` - Type of objects for this pool
  `size` - Size of vector to allocate

#### ObjectPool

    public ObjectPool()

Constructor ObjectPool

### Method Detail

#### getInstanceIfFree

    public java.lang.Object getInstanceIfFree()

Get an instance of the given object in this pool if available

Returns:
  an instance of the given object if available or null

#### getInstance

    public java.lang.Object getInstance()

Get an instance of the given object in this pool

Returns:
  An instance of the given object

#### freeInstance

    public void freeInstance(java.lang.Object obj)

Add an instance of the given object to the pool

Parameters:
  `obj` - Object to add.