Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.pool
Class BaseObjectPool

    java.lang.Object
      org.apache.commons.pool.BaseObjectPool

All Implemented Interfaces:
  ObjectPool

Direct Known Subclasses:
  GenericObjectPool, SoftReferenceObjectPool, StackObjectPool

    public abstract class BaseObjectPool

extends Object
implements ObjectPool

A simple base implementation of `ObjectPool`. Optional operations are implemented to either do nothing, return a value indicating it is unsupported or throw `UnsupportedOperationException`.

Since:
  Pool 1.0
Version:
  $Revision: 1084645 $ $Date: 2011-03-23 10:11:19 -0700 (Wed, 23 Mar 2011) $
Author:
  Rodney Waldhoff, Sandy McArthur

Constructor Summary
`BaseObjectPool()`

Method Summary
`void` | `addObject()` Not supported in this base implementation.
`protected void` | `assertOpen()` Throws an `IllegalStateException` when this pool has been closed.
`abstract Object` | `borrowObject()` Obtains an instance from the pool.
`void` | `clear()` Not supported in this base implementation.
`void` | `close()` Close this pool.
`int` | `getNumActive()` Not supported in this base implementation.
`int` | `getNumIdle()` Not supported in this base implementation.
`abstract void` | `invalidateObject(Object obj)` Invalidates an object from the pool.
`boolean` | `isClosed()` Has this pool instance been closed.
`abstract void` | `returnObject(Object obj)` Returns an instance to the pool.
`void` | `setFactory(PoolableObjectFactory factory)` Deprecated. to be removed in pool 2.0

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### BaseObjectPool

    public BaseObjectPool()

Method Detail

### borrowObject

    public abstract Object borrowObject()
                                 throws Exception

  Obtains an instance from the pool.

  Specified by:
    `borrowObject` in interface `ObjectPool`
  Returns:
    an instance from the pool
  Throws:
    `Exception` - if an instance cannot be obtained from the pool

### returnObject

    public abstract void returnObject(Object obj)
                               throws Exception

  Returns an instance to the pool.

  Specified by:
    `returnObject` in interface `ObjectPool`
  Parameters:
    `obj` - instance to return to the pool
  Throws:
    `Exception`

### invalidateObject

    public abstract void invalidateObject(Object obj)
                                   throws Exception

  Invalidates an object from the pool.

  By contract, `obj` must have been obtained using `borrowObject`.

  This method should be used when an object that has been borrowed is determined (due to an exception or other problem) to be invalid.

  Specified by:
    `invalidateObject` in interface `ObjectPool`
  Parameters:
    `obj` - a `borrowed` instance to be disposed.
  Throws:
    `Exception`

### getNumIdle

    public int getNumIdle()
                   throws UnsupportedOperationException

  Not supported in this base implementation.

  Specified by:
    `getNumIdle` in interface `ObjectPool`
  Returns:
    a negative value.
  Throws:
    `UnsupportedOperationException`

### getNumActive

    public int getNumActive()
                     throws UnsupportedOperationException

  Not supported in this base implementation.

  Specified by:
    `getNumActive` in interface `ObjectPool`
  Returns:
    a negative value.
  Throws:
    `UnsupportedOperationException`

### clear

    public void clear()
               throws Exception,
                      UnsupportedOperationException

  Not supported in this base implementation.

  Specified by:
    `clear` in interface `ObjectPool`
  Throws:
    `UnsupportedOperationException`
    `Exception`

### addObject

    public void addObject()
                   throws Exception,
                          UnsupportedOperationException

  Not supported in this base implementation. Always throws an `UnsupportedOperationException`, subclasses should override this behavior.

  Specified by:
    `addObject` in interface `ObjectPool`
  Throws:
    `UnsupportedOperationException`
    `Exception` - when `PoolableObjectFactory.makeObject()` fails.
    `IllegalStateException` - after `ObjectPool.close()` has been called on this pool.

### close

    public void close()
               throws Exception

  Close this pool. This affects the behavior of `isClosed` and `assertOpen`.

  Specified by:
    `close` in interface `ObjectPool`
  Throws:
    `Exception` - deprecated: implementations should silently fail if not all resources can be freed.

### setFactory

    public void setFactory(PoolableObjectFactory factory)
                    throws IllegalStateException,
                           UnsupportedOperationException

  Deprecated. to be removed in pool 2.0

  Not supported in this base implementation. Always throws an `UnsupportedOperationException`, subclasses should override this behavior.

  Specified by:
    `setFactory` in interface `ObjectPool`
  Parameters:
    `factory` - the PoolableObjectFactory
  Throws:
    `UnsupportedOperationException`
    `IllegalStateException`

### isClosed

    public final boolean isClosed()

  Has this pool instance been closed.

  Returns:
    `true` when this pool has been closed.

### assertOpen

    protected final void assertOpen()
                             throws IllegalStateException

  Throws an `IllegalStateException` when this pool has been closed.

  Throws:
    `IllegalStateException` - when this pool has been closed.
  See Also:
    `isClosed()`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2011 The Apache Software Foundation. All Rights Reserved.