Example usage for org.apache.commons.pool2.impl GenericKeyedObjectPool returnObject

List of usage examples for org.apache.commons.pool2.impl GenericKeyedObjectPool returnObject

Introduction

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

Prototype

@Override
public void returnObject(K key, T obj) 

Source Link

Document

Returns an object to a keyed sub-pool.

Usage

From source file:com.vmware.identity.idm.server.provider.LdapConnectionPool.java

public void returnConnection(PooledLdapConnection pooledConnection) {
    if (pooledConnection == null || pooledConnection.getConnection() == null) {
        return;//from   w  ww. j av  a  2 s .c  o  m
    }

    if (pooledConnection.getIdentity() == null) {
        logger.warn("Identity is not set. Closing connection");
        pooledConnection.getConnection().close();
        return;
    }

    String tenantName = pooledConnection.getIdentity().getTenantName().toLowerCase();

    GenericKeyedObjectPool<PooledLdapConnectionIdentity, ILdapConnectionEx> pool = poolMap.get(tenantName);
    if (pool != null) {
        pool.returnObject(pooledConnection.getIdentity(), pooledConnection.getConnection());
    } else {
        pooledConnection.getConnection().close();
    }
}