Example usage for org.apache.commons.pool2.impl GenericObjectPool getNumIdle

List of usage examples for org.apache.commons.pool2.impl GenericObjectPool getNumIdle

Introduction

In this page you can find the example usage for org.apache.commons.pool2.impl GenericObjectPool getNumIdle.

Prototype

@Override
    public int getNumIdle() 

Source Link

Usage

From source file:com.adaptris.core.services.splitter.ServiceWorkerPool.java

/**
 * /*from  ww w.j  ava2s . com*/
 * @deprecated since 3.8.3 switch to commons-pool2 instead.
 */
@Deprecated
@Removal(version = "3.9.0", message = "use commons-pool2 variant instead")
public void warmup(final org.apache.commons.pool.impl.GenericObjectPool<Worker> objectPool)
        throws CoreException {
    logDeprecationWarning();
    ExecutorService populator = Executors
            .newCachedThreadPool(new ManagedThreadFactory(this.getClass().getSimpleName()));
    try {
        log.trace("Warming up {} service-workers", maxThreads);
        final List<Future<Worker>> futures = new ArrayList<>(maxThreads);

        for (int i = 0; i < maxThreads; i++) {
            futures.add(populator.submit(new Callable<Worker>() {

                @Override
                public Worker call() throws Exception {
                    return objectPool.borrowObject();
                }

            }));
        }
        for (Worker w : waitFor(futures)) {
            objectPool.returnObject(w);
        }
        log.trace("ObjectPool contains {} (active) of {} objects", objectPool.getNumActive(),
                objectPool.getNumIdle());

    } catch (Exception e) {
        throw ExceptionHelper.wrapCoreException(e);
    } finally {
        populator.shutdownNow();
    }
}

From source file:org.apache.ofbiz.entity.connection.DebugManagedDataSource.java

@Override
public Connection getConnection() throws SQLException {
    if (Debug.verboseOn()) {
        if (super.getPool() instanceof GenericObjectPool) {
            GenericObjectPool objectPool = (GenericObjectPool) super.getPool();
            Debug.logVerbose("Borrowing a connection from the pool; used/idle/total: "
                    + objectPool.getNumActive() + "/" + objectPool.getNumIdle() + "/"
                    + (objectPool.getNumActive() + objectPool.getNumIdle()) + "; min idle/max idle/max total: "
                    + objectPool.getMinIdle() + "/" + objectPool.getMaxIdle() + "/" + objectPool.getMaxTotal(),
                    module);/*from   ww w  . j  ava2 s . com*/
        } else {
            Debug.logVerbose("Borrowing a connection from the pool; used/idle/total: "
                    + super.getPool().getNumActive() + "/" + super.getPool().getNumIdle() + "/"
                    + (super.getPool().getNumActive() + super.getPool().getNumIdle()), module);
        }
    }
    return super.getConnection();
}