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

## org.apache.cxf.service.invoker
Class PooledFactory

    java.lang.Object
      org.apache.cxf.service.invoker.PooledFactory

All Implemented Interfaces:
  Factory

    public class PooledFactory

extends Object
implements Factory

Factory the maintains a pool of instances that are used. Can optionally create more instances than the size of the queue

Constructor Summary
`PooledFactory(Class<?> svcClass, int max)` Pool of instances of the svcClass
`PooledFactory(Collection<Object> objs)` Pool constructed from the give Collection of objects.
`PooledFactory(Factory factory, int max)` Pool of instances constructed from the given factory
`PooledFactory(Factory factory, int max, boolean createMore)` Pool of instances constructed from the given factory

Method Summary
`Object` | `create(Exchange ex)` Creates the object that will be used for the invoke
`protected Object` | `createObject(Exchange e)`
`void` | `release(Exchange ex, Object o)` Post invoke, this is called to allow the factory to release the object, store it, etc...

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

Constructor Detail

### PooledFactory

    public PooledFactory(Class<?> svcClass,
                         int max)

  Pool of instances of the svcClass

  Parameters:
    `svcClass` - the class to create
    `max` - the absolute maximum number to create and pool

### PooledFactory

    public PooledFactory(Factory factory,
                         int max)

  Pool of instances constructed from the given factory

  Parameters:
    `factory` -
    `max` - the absolute maximum number to create and pool

### PooledFactory

    public PooledFactory(Factory factory,
                         int max,
                         boolean createMore)

  Pool of instances constructed from the given factory

  Parameters:
    `factory` -
    `max` - the absolute maximum number to create and pool
    `createMore` - If the pool is empty, but max objects have already been constructed, should more be constructed on a per-request basis (and then discarded when done) or should requests block until instances are released back into the pool.

### PooledFactory

    public PooledFactory(Collection<Object> objs)

  Pool constructed from the give Collection of objects.

  Parameters:
    `objs` - The collection of objects to pre-populate the pool

Method Detail

### create

    public Object create(Exchange ex)
                  throws Throwable

  Creates the object that will be used for the invoke

  Specified by:
    `create` in interface `Factory`
  Returns:
  Throws:
    `Throwable`

### createObject

    protected Object createObject(Exchange e)
                           throws Throwable

  Throws:
    `Throwable`

### release

    public void release(Exchange ex,
                        Object o)

  Post invoke, this is called to allow the factory to release the object, store it, etc...

  Specified by:
    `release` in interface `Factory`
    `o` - object created from the create method

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

Apache CXF