code: public GenericObjectPool.Config getObjectPoolConfig()
      {
          GenericObjectPool.Config conf = new GenericObjectPool.Config();
          conf.maxActive = getMaxActive();
          conf.maxIdle = getMaxIdle();
          conf.minIdle = getMinIdle();
          conf.maxWait = getMaxWait();
          conf.minEvictableIdleTimeMillis = getMinEvictableIdleTimeMillis();
          conf.numTestsPerEvictionRun = getNumTestsPerEvictionRun();
          conf.testOnBorrow = isTestOnBorrow();
          conf.testOnReturn = isTestOnReturn();
          conf.testWhileIdle = isTestWhileIdle();
          conf.timeBetweenEvictionRunsMillis = getTimeBetweenEvictionRunsMillis();
          conf.whenExhaustedAction = getWhenExhaustedAction();
          return conf;
      }
docs: Returns an {@link org.apache.commons.pool.impl.GenericObjectPool.Config} object
  configurated with the properties extracted from the this instance.
  Use this to configurate a pool implementation using
  {@link org.apache.commons.pool.impl.GenericObjectPool}.