You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@commons.apache.org by ps...@apache.org on 2015/06/01 00:24:05 UTC

svn commit: r953350 [6/37] - in /websites/production/commons/content/proper/commons-pool: api-2.4.1/ api-2.4.1/org/ api-2.4.1/org/apache/ api-2.4.1/org/apache/commons/ api-2.4.1/org/apache/commons/pool2/ api-2.4.1/org/apache/commons/pool2/class-use/ ap...

Added: websites/production/commons/content/proper/commons-pool/api-2.4.1/org/apache/commons/pool2/PoolUtils.html
==============================================================================
--- websites/production/commons/content/proper/commons-pool/api-2.4.1/org/apache/commons/pool2/PoolUtils.html (added)
+++ websites/production/commons/content/proper/commons-pool/api-2.4.1/org/apache/commons/pool2/PoolUtils.html Sun May 31 22:24:03 2015
@@ -0,0 +1,889 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<title>PoolUtils (Apache Commons Pool 2.4.1 API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="PoolUtils (Apache Commons Pool 2.4.1 API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/PoolUtils.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/commons/pool2/PooledObjectState.html" title="enum in org.apache.commons.pool2"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/commons/pool2/SwallowedExceptionListener.html" title="interface in org.apache.commons.pool2"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/commons/pool2/PoolUtils.html" target="_top">Frames</a></li>
+<li><a href="PoolUtils.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.apache.commons.pool2</div>
+<h2 title="Class PoolUtils" class="title">Class PoolUtils</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.apache.commons.pool2.PoolUtils</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>public final class <a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.39">PoolUtils</a>
+extends <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">This class consists exclusively of static methods that operate on or return
+ ObjectPool or KeyedObjectPool related interfaces.</div>
+<dl>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>2.0</dd>
+<dt><span class="simpleTagLabel">Version:</span></dt>
+<dd>$Revision: 1566584 $</dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#PoolUtils--">PoolUtils</a></span>()</code>
+<div class="block">PoolUtils instances should NOT be constructed in standard programming.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,<a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util">TimerTask</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkMinIdle-org.apache.commons.pool2.KeyedObjectPool-java.util.Collection-int-long-">checkMinIdle</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+            <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;K&gt;&nbsp;keys,
+            int&nbsp;minIdle,
+            long&nbsp;period)</code>
+<div class="block">Periodically check the idle object count for each key in the
+ <code>Collection</code> <code>keys</code> in the keyedPool.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util">TimerTask</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkMinIdle-org.apache.commons.pool2.KeyedObjectPool-K-int-long-">checkMinIdle</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+            K&nbsp;key,
+            int&nbsp;minIdle,
+            long&nbsp;period)</code>
+<div class="block">Periodically check the idle object count for the key in the keyedPool.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util">TimerTask</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkMinIdle-org.apache.commons.pool2.ObjectPool-int-long-">checkMinIdle</a></span>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool,
+            int&nbsp;minIdle,
+            long&nbsp;period)</code>
+<div class="block">Periodically check the idle object count for the pool.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkRethrow-java.lang.Throwable-">checkRethrow</a></span>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;t)</code>
+<div class="block">Should the supplied Throwable be re-thrown (eg if it is an instance of
+ one of the Throwables that should never be swallowed).</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.KeyedObjectPool-">erodingPool</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool)</code>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.KeyedObjectPool-float-">erodingPool</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+           float&nbsp;factor)</code>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.KeyedObjectPool-float-boolean-">erodingPool</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+           float&nbsp;factor,
+           boolean&nbsp;perKey)</code>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.ObjectPool-">erodingPool</a></span>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool)</code>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.ObjectPool-float-">erodingPool</a></span>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool,
+           float&nbsp;factor)</code>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill-org.apache.commons.pool2.KeyedObjectPool-java.util.Collection-int-">prefill</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+       <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;K&gt;&nbsp;keys,
+       int&nbsp;count)</code>
+<div class="block">Call <code>addObject(Object)</code> on <code>keyedPool</code> with each
+ key in <code>keys</code> for <code>count</code> number of times.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill-org.apache.commons.pool2.KeyedObjectPool-K-int-">prefill</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+       K&nbsp;key,
+       int&nbsp;count)</code>
+<div class="block">Call <code>addObject(Object)</code> on <code>keyedPool</code> with
+ <code>key</code> <code>count</code> number of times.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill-org.apache.commons.pool2.ObjectPool-int-">prefill</a></span>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool,
+       int&nbsp;count)</code>
+<div class="block">Call <code>addObject()</code> on <code>pool</code> <code>count</code>
+ number of times.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2">KeyedPooledObjectFactory</a>&lt;K,V&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#synchronizedKeyedPooledFactory-org.apache.commons.pool2.KeyedPooledObjectFactory-">synchronizedKeyedPooledFactory</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2">KeyedPooledObjectFactory</a>&lt;K,V&gt;&nbsp;keyedFactory)</code>
+<div class="block">Returns a synchronized (thread-safe) KeyedPooledObjectFactory backed by
+ the specified KeyedPoolableObjectFactory.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#synchronizedPool-org.apache.commons.pool2.KeyedObjectPool-">synchronizedPool</a></span>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool)</code>
+<div class="block">Returns a synchronized (thread-safe) KeyedObjectPool backed by the
+ specified KeyedObjectPool.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#synchronizedPool-org.apache.commons.pool2.ObjectPool-">synchronizedPool</a></span>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool)</code>
+<div class="block">Returns a synchronized (thread-safe) ObjectPool backed by the specified
+ ObjectPool.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2">PooledObjectFactory</a>&lt;T&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/commons/pool2/PoolUtils.html#synchronizedPooledFactory-org.apache.commons.pool2.PooledObjectFactory-">synchronizedPooledFactory</a></span>(<a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2">PooledObjectFactory</a>&lt;T&gt;&nbsp;factory)</code>
+<div class="block">Returns a synchronized (thread-safe) PooledObjectFactory backed by the
+ specified PooledObjectFactory.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang
 /Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="PoolUtils--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>PoolUtils</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.55">PoolUtils</a>()</pre>
+<div class="block">PoolUtils instances should NOT be constructed in standard programming.
+ Instead, the class should be used procedurally: PoolUtils.adapt(aPool);.
+ This constructor is public to permit tools that require a JavaBean
+ instance to operate.</div>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="checkRethrow-java.lang.Throwable-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>checkRethrow</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.71">checkRethrow</a>(<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;t)</pre>
+<div class="block">Should the supplied Throwable be re-thrown (eg if it is an instance of
+ one of the Throwables that should never be swallowed). Used by the pool
+ error handling for operations that throw exceptions that normally need to
+ be ignored.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>t</code> - The Throwable to check</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/ThreadDeath.html?is-external=true" title="class or interface in java.lang">ThreadDeath</a></code> - if that is passed in</dd>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/VirtualMachineError.html?is-external=true" title="class or interface in java.lang">VirtualMachineError</a></code> - if that is passed in</dd>
+</dl>
+</li>
+</ul>
+<a name="checkMinIdle-org.apache.commons.pool2.ObjectPool-int-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>checkMinIdle</h4>
+<pre>public static&nbsp;&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util">TimerTask</a>&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.102">checkMinIdle</a>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool,
+                                         int&nbsp;minIdle,
+                                         long&nbsp;period)
+                                  throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></pre>
+<div class="block">Periodically check the idle object count for the pool. At most one idle
+ object will be added per period. If there is an exception when calling
+ <a href="../../../../org/apache/commons/pool2/ObjectPool.html#addObject--"><code>ObjectPool.addObject()</code></a> then no more checks will be performed.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type of objects in the pool</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>pool</code> - the pool to check periodically.</dd>
+<dd><code>minIdle</code> - if the <a href="../../../../org/apache/commons/pool2/ObjectPool.html#getNumIdle--"><code>ObjectPool.getNumIdle()</code></a> is less than this then
+            add an idle object.</dd>
+<dd><code>period</code> - the frequency to check the number of idle objects in a pool,
+            see <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Timer.html?is-external=true#schedule-java.util.TimerTask-long-long-" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the <a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util"><code>TimerTask</code></a> that will periodically check the pools idle
+         object count.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - when <code>pool</code> is <code>null</code> or when
+             <code>minIdle</code> is negative or when <code>period</code>
+             isn't valid for <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Timer.html?is-external=true#schedule-java.util.TimerTask-long-long-" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="checkMinIdle-org.apache.commons.pool2.KeyedObjectPool-java.lang.Object-int-long-">
+<!--   -->
+</a><a name="checkMinIdle-org.apache.commons.pool2.KeyedObjectPool-K-int-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>checkMinIdle</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util">TimerTask</a>&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.142">checkMinIdle</a>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+                                           K&nbsp;key,
+                                           int&nbsp;minIdle,
+                                           long&nbsp;period)
+                                    throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></pre>
+<div class="block">Periodically check the idle object count for the key in the keyedPool. At
+ most one idle object will be added per period. If there is an exception
+ when calling <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html#addObject-K-"><code>KeyedObjectPool.addObject(Object)</code></a> then no more
+ checks for that key will be performed.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedPool</code> - the keyedPool to check periodically.</dd>
+<dd><code>key</code> - the key to check the idle count of.</dd>
+<dd><code>minIdle</code> - if the <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html#getNumIdle-K-"><code>KeyedObjectPool.getNumIdle(Object)</code></a> is less than
+            this then add an idle object.</dd>
+<dd><code>period</code> - the frequency to check the number of idle objects in a
+            keyedPool, see <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Timer.html?is-external=true#schedule-java.util.TimerTask-long-long-" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the <a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util"><code>TimerTask</code></a> that will periodically check the pools idle
+         object count.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - when <code>keyedPool</code>, <code>key</code> is
+             <code>null</code> or when <code>minIdle</code> is negative or
+             when <code>period</code> isn't valid for
+             <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Timer.html?is-external=true#schedule-java.util.TimerTask-long-long-" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a>.</dd>
+</dl>
+</li>
+</ul>
+<a name="checkMinIdle-org.apache.commons.pool2.KeyedObjectPool-java.util.Collection-int-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>checkMinIdle</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,<a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util">TimerTask</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.188">checkMinIdle</a>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+                                                  <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;K&gt;&nbsp;keys,
+                                                  int&nbsp;minIdle,
+                                                  long&nbsp;period)
+                                           throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></pre>
+<div class="block">Periodically check the idle object count for each key in the
+ <code>Collection</code> <code>keys</code> in the keyedPool. At most one
+ idle object will be added per period.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedPool</code> - the keyedPool to check periodically.</dd>
+<dd><code>keys</code> - a collection of keys to check the idle object count.</dd>
+<dd><code>minIdle</code> - if the <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html#getNumIdle-K-"><code>KeyedObjectPool.getNumIdle(Object)</code></a> is less than
+            this then add an idle object.</dd>
+<dd><code>period</code> - the frequency to check the number of idle objects in a
+            keyedPool, see <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Timer.html?is-external=true#schedule-java.util.TimerTask-long-long-" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a> of key and <a href="http://docs.oracle.com/javase/6/docs/api/java/util/TimerTask.html?is-external=true" title="class or interface in java.util"><code>TimerTask</code></a> pairs that will
+         periodically check the pools idle object count.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - when <code>keyedPool</code>, <code>keys</code>, or any of the
+             values in the collection is <code>null</code> or when
+             <code>minIdle</code> is negative or when <code>period</code>
+             isn't valid for <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Timer.html?is-external=true#schedule-java.util.TimerTask-long-long-" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a>
+             .</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkMinIdle-org.apache.commons.pool2.KeyedObjectPool-K-int-long-"><code>checkMinIdle(KeyedObjectPool, Object, int, long)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="prefill-org.apache.commons.pool2.ObjectPool-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>prefill</h4>
+<pre>public static&nbsp;&lt;T&gt;&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.219">prefill</a>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool,
+                               int&nbsp;count)
+                        throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a>,
+                               <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></pre>
+<div class="block">Call <code>addObject()</code> on <code>pool</code> <code>count</code>
+ number of times.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type of objects in the pool</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>pool</code> - the pool to prefill.</dd>
+<dd><code>count</code> - the number of idle objects to add.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code> - when <a href="../../../../org/apache/commons/pool2/ObjectPool.html#addObject--"><code>ObjectPool.addObject()</code></a> fails.</dd>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - when <code>pool</code> is <code>null</code>.</dd>
+</dl>
+</li>
+</ul>
+<a name="prefill-org.apache.commons.pool2.KeyedObjectPool-java.lang.Object-int-">
+<!--   -->
+</a><a name="prefill-org.apache.commons.pool2.KeyedObjectPool-K-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>prefill</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.247">prefill</a>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+                                 K&nbsp;key,
+                                 int&nbsp;count)
+                          throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a>,
+                                 <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></pre>
+<div class="block">Call <code>addObject(Object)</code> on <code>keyedPool</code> with
+ <code>key</code> <code>count</code> number of times.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedPool</code> - the keyedPool to prefill.</dd>
+<dd><code>key</code> - the key to add objects for.</dd>
+<dd><code>count</code> - the number of idle objects to add for <code>key</code>.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code> - when <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html#addObject-K-"><code>KeyedObjectPool.addObject(Object)</code></a> fails.</dd>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - when <code>keyedPool</code> or <code>key</code> is
+             <code>null</code>.</dd>
+</dl>
+</li>
+</ul>
+<a name="prefill-org.apache.commons.pool2.KeyedObjectPool-java.util.Collection-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>prefill</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.282">prefill</a>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+                                 <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;K&gt;&nbsp;keys,
+                                 int&nbsp;count)
+                          throws <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a>,
+                                 <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></pre>
+<div class="block">Call <code>addObject(Object)</code> on <code>keyedPool</code> with each
+ key in <code>keys</code> for <code>count</code> number of times. This has
+ the same effect as calling <a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill-org.apache.commons.pool2.KeyedObjectPool-K-int-"><code>prefill(KeyedObjectPool, Object, int)</code></a>
+ for each key in the <code>keys</code> collection.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedPool</code> - the keyedPool to prefill.</dd>
+<dd><code>keys</code> - <a href="http://docs.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util"><code>Collection</code></a> of keys to add objects for.</dd>
+<dd><code>count</code> - the number of idle objects to add for each <code>key</code>.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code> - when <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html#addObject-K-"><code>KeyedObjectPool.addObject(Object)</code></a> fails.</dd>
+<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - when <code>keyedPool</code>, <code>keys</code>, or any value
+             in <code>keys</code> is <code>null</code>.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill-org.apache.commons.pool2.KeyedObjectPool-K-int-"><code>prefill(KeyedObjectPool, Object, int)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="synchronizedPool-org.apache.commons.pool2.ObjectPool-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>synchronizedPool</h4>
+<pre>public static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.311">synchronizedPool</a>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool)</pre>
+<div class="block">Returns a synchronized (thread-safe) ObjectPool backed by the specified
+ ObjectPool.
+ <p>
+ <b>Note:</b> This should not be used on pool implementations that already
+ provide proper synchronization such as the pools provided in the Commons
+ Pool library. Wrapping a pool that <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang"><code>waits</code></a> for poolable
+ objects to be returned before allowing another one to be borrowed with
+ another layer of synchronization will cause liveliness issues or a
+ deadlock.
+ </p></div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type of objects in the pool</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>pool</code> - the ObjectPool to be "wrapped" in a synchronized ObjectPool.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a synchronized view of the specified ObjectPool.</dd>
+</dl>
+</li>
+</ul>
+<a name="synchronizedPool-org.apache.commons.pool2.KeyedObjectPool-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>synchronizedPool</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.348">synchronizedPool</a>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool)</pre>
+<div class="block">Returns a synchronized (thread-safe) KeyedObjectPool backed by the
+ specified KeyedObjectPool.
+ <p>
+ <b>Note:</b> This should not be used on pool implementations that already
+ provide proper synchronization such as the pools provided in the Commons
+ Pool library. Wrapping a pool that <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang"><code>waits</code></a> for poolable
+ objects to be returned before allowing another one to be borrowed with
+ another layer of synchronization will cause liveliness issues or a
+ deadlock.
+ </p></div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedPool</code> - the KeyedObjectPool to be "wrapped" in a synchronized
+            KeyedObjectPool.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a synchronized view of the specified KeyedObjectPool.</dd>
+</dl>
+</li>
+</ul>
+<a name="synchronizedPooledFactory-org.apache.commons.pool2.PooledObjectFactory-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>synchronizedPooledFactory</h4>
+<pre>public static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2">PooledObjectFactory</a>&lt;T&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.372">synchronizedPooledFactory</a>(<a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2">PooledObjectFactory</a>&lt;T&gt;&nbsp;factory)</pre>
+<div class="block">Returns a synchronized (thread-safe) PooledObjectFactory backed by the
+ specified PooledObjectFactory.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type of objects in the pool</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>factory</code> - the PooledObjectFactory to be "wrapped" in a synchronized
+            PooledObjectFactory.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a synchronized view of the specified PooledObjectFactory.</dd>
+</dl>
+</li>
+</ul>
+<a name="synchronizedKeyedPooledFactory-org.apache.commons.pool2.KeyedPooledObjectFactory-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>synchronizedKeyedPooledFactory</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2">KeyedPooledObjectFactory</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.388">synchronizedKeyedPooledFactory</a>(<a href="../../../../org/apache/commons/pool2/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2">KeyedPooledObjectFactory</a>&lt;K,V&gt;&nbsp;keyedFactory)</pre>
+<div class="block">Returns a synchronized (thread-safe) KeyedPooledObjectFactory backed by
+ the specified KeyedPoolableObjectFactory.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedFactory</code> - the KeyedPooledObjectFactory to be "wrapped" in a
+            synchronized KeyedPooledObjectFactory.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a synchronized view of the specified KeyedPooledObjectFactory.</dd>
+</dl>
+</li>
+</ul>
+<a name="erodingPool-org.apache.commons.pool2.ObjectPool-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>erodingPool</h4>
+<pre>public static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.408">erodingPool</a>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool)</pre>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed. This is intended as an always thread-safe alternative
+ to using an idle object evictor provided by many pool implementations.
+ This is also an effective way to shrink FIFO ordered pools that
+ experience load spikes.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type of objects in the pool</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>pool</code> - the ObjectPool to be decorated so it shrinks its idle count
+            when possible.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a pool that adaptively decreases its size when idle objects are
+         no longer needed.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.ObjectPool-float-"><code>erodingPool(ObjectPool, float)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="erodingPool-org.apache.commons.pool2.ObjectPool-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>erodingPool</h4>
+<pre>public static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.438">erodingPool</a>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a>&lt;T&gt;&nbsp;pool,
+                                            float&nbsp;factor)</pre>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed. This is intended as an always thread-safe alternative
+ to using an idle object evictor provided by many pool implementations.
+ This is also an effective way to shrink FIFO ordered pools that
+ experience load spikes.
+ <p>
+ The factor parameter provides a mechanism to tweak the rate at which the
+ pool tries to shrink its size. Values between 0 and 1 cause the pool to
+ try to shrink its size more often. Values greater than 1 cause the pool
+ to less frequently try to shrink its size.
+ </p></div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type of objects in the pool</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>pool</code> - the ObjectPool to be decorated so it shrinks its idle count
+            when possible.</dd>
+<dd><code>factor</code> - a positive value to scale the rate at which the pool tries to
+            reduce its size. If 0 &lt; factor &lt; 1 then the pool
+            shrinks more aggressively. If 1 &lt; factor then the pool
+            shrinks less aggressively.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a pool that adaptively decreases its size when idle objects are
+         no longer needed.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.ObjectPool-"><code>erodingPool(ObjectPool)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="erodingPool-org.apache.commons.pool2.KeyedObjectPool-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>erodingPool</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.466">erodingPool</a>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool)</pre>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed. This is intended as an always thread-safe alternative
+ to using an idle object evictor provided by many pool implementations.
+ This is also an effective way to shrink FIFO ordered pools that
+ experience load spikes.</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedPool</code> - the KeyedObjectPool to be decorated so it shrinks its idle
+            count when possible.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a pool that adaptively decreases its size when idle objects are
+         no longer needed.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.KeyedObjectPool-float-"><code>erodingPool(KeyedObjectPool, float)</code></a>, 
+<a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.KeyedObjectPool-float-boolean-"><code>erodingPool(KeyedObjectPool, float, boolean)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="erodingPool-org.apache.commons.pool2.KeyedObjectPool-float-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>erodingPool</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.498">erodingPool</a>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+                                                     float&nbsp;factor)</pre>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed. This is intended as an always thread-safe alternative
+ to using an idle object evictor provided by many pool implementations.
+ This is also an effective way to shrink FIFO ordered pools that
+ experience load spikes.
+ <p>
+ The factor parameter provides a mechanism to tweak the rate at which the
+ pool tries to shrink its size. Values between 0 and 1 cause the pool to
+ try to shrink its size more often. Values greater than 1 cause the pool
+ to less frequently try to shrink its size.
+ </p></div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedPool</code> - the KeyedObjectPool to be decorated so it shrinks its idle
+            count when possible.</dd>
+<dd><code>factor</code> - a positive value to scale the rate at which the pool tries to
+            reduce its size. If 0 &lt; factor &lt; 1 then the pool
+            shrinks more aggressively. If 1 &lt; factor then the pool
+            shrinks less aggressively.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a pool that adaptively decreases its size when idle objects are
+         no longer needed.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.KeyedObjectPool-float-boolean-"><code>erodingPool(KeyedObjectPool, float, boolean)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="erodingPool-org.apache.commons.pool2.KeyedObjectPool-float-boolean-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>erodingPool</h4>
+<pre>public static&nbsp;&lt;K,V&gt;&nbsp;<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/commons/pool2/PoolUtils.html#line.539">erodingPool</a>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a>&lt;K,V&gt;&nbsp;keyedPool,
+                                                     float&nbsp;factor,
+                                                     boolean&nbsp;perKey)</pre>
+<div class="block">Returns a pool that adaptively decreases its size when idle objects are
+ no longer needed. This is intended as an always thread-safe alternative
+ to using an idle object evictor provided by many pool implementations.
+ This is also an effective way to shrink FIFO ordered pools that
+ experience load spikes.
+ <p>
+ The factor parameter provides a mechanism to tweak the rate at which the
+ pool tries to shrink its size. Values between 0 and 1 cause the pool to
+ try to shrink its size more often. Values greater than 1 cause the pool
+ to less frequently try to shrink its size.
+ </p>
+ <p>
+ The perKey parameter determines if the pool shrinks on a whole pool basis
+ or a per key basis. When perKey is false, the keys do not have an effect
+ on the rate at which the pool tries to shrink its size. When perKey is
+ true, each key is shrunk independently.
+ </p></div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>K</code> - the type of the pool key</dd>
+<dd><code>V</code> - the type of pool entries</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>keyedPool</code> - the KeyedObjectPool to be decorated so it shrinks its idle
+            count when possible.</dd>
+<dd><code>factor</code> - a positive value to scale the rate at which the pool tries to
+            reduce its size. If 0 &lt; factor &lt; 1 then the pool
+            shrinks more aggressively. If 1 &lt; factor then the pool
+            shrinks less aggressively.</dd>
+<dd><code>perKey</code> - when true, each key is treated independently.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a pool that adaptively decreases its size when idle objects are
+         no longer needed.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.KeyedObjectPool-"><code>erodingPool(KeyedObjectPool)</code></a>, 
+<a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool-org.apache.commons.pool2.KeyedObjectPool-float-"><code>erodingPool(KeyedObjectPool, float)</code></a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/PoolUtils.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/apache/commons/pool2/PooledObjectState.html" title="enum in org.apache.commons.pool2"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/commons/pool2/SwallowedExceptionListener.html" title="interface in org.apache.commons.pool2"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/apache/commons/pool2/PoolUtils.html" target="_top">Frames</a></li>
+<li><a href="PoolUtils.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2001&#x2013;2015 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
+</body>
+</html>

Propchange: websites/production/commons/content/proper/commons-pool/api-2.4.1/org/apache/commons/pool2/PoolUtils.html
------------------------------------------------------------------------------
    svn:eol-style = native