Added: websites/production/commons/content/proper/commons-pool/api-2.3/org/apache/commons/pool2/ObjectPool.html ============================================================================== --- websites/production/commons/content/proper/commons-pool/api-2.3/org/apache/commons/pool2/ObjectPool.html (added) +++ websites/production/commons/content/proper/commons-pool/api-2.3/org/apache/commons/pool2/ObjectPool.html Wed Dec 31 14:00:19 2014 @@ -0,0 +1,440 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<meta http-equiv="Content-Type" content="text/html" charset="iso-8859-1"> +<title>ObjectPool (Apache Commons Pool 2.3 API)</title> +<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> +</head> +<body> +<script type="text/javascript"><!-- + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="ObjectPool (Apache Commons Pool 2.3 API)"; + } +//--> +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar_top"> +<!-- --> +</a><a href="#skip-navbar_top" title="Skip navigation links"></a><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/ObjectPool.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/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2"><span class="strong">Prev Class</span></a></li> +<li><a href="../../../../org/apache/commons/pool2/PooledObject.html" title="interface in org.apache.commons.pool2"><span class="strong">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/commons/pool2/ObjectPool.html" target="_top">Frames</a></li> +<li><a href="ObjectPool.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../../allclasses-noframe.html">All 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: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </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="Interface ObjectPool" class="title">Interface ObjectPool<T></h2> +</div> +<div class="contentContainer"> +<div class="description"> +<ul class="blockList"> +<li class="blockList"> +<dl><dt><span class="strong">Type Parameters:</span></dt><dd><code>T</code> - Type of element pooled in this pool.</dd></dl> +<dl> +<dt>All Known Implementing Classes:</dt> +<dd><a href="../../../../org/apache/commons/pool2/BaseObjectPool.html" title="class in org.apache.commons.pool2">BaseObjectPool</a>, <a href="../../../../org/apache/commons/pool2/impl/GenericObjectPool.html" title="class in org.apache.commons.pool2.impl">GenericObjectPool</a>, <a href="../../../../org/apache/commons/pool2/proxy/ProxiedObjectPool.html" title="class in org.apache.commons.pool2.proxy">ProxiedObjectPool</a>, <a href="../../../../org/apache/commons/pool2/impl/SoftReferenceObjectPool.html" title="class in org.apache.commons.pool2.impl">SoftReferenceObjectPool</a></dd> +</dl> +<hr> +<br> +<pre>public interface <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.59">ObjectPool</a><T></pre> +<div class="block">A pooling simple interface. + <p> + Example of use: + <pre style="border:solid thin; padding: 1ex;" + > Object obj = <code style="color:#00C">null</code>; + + <code style="color:#00C">try</code> { + obj = pool.borrowObject(); + <code style="color:#00C">try</code> { + <code style="color:#0C0">//...use the object...</code> + } <code style="color:#00C">catch</code>(Exception e) { + <code style="color:#0C0">// invalidate the object</code> + pool.invalidateObject(obj); + <code style="color:#0C0">// do not return the object to the pool twice</code> + obj = <code style="color:#00C">null</code>; + } <code style="color:#00C">finally</code> { + <code style="color:#0C0">// make sure the object is returned to the pool</code> + <code style="color:#00C">if</code>(<code style="color:#00C">null</code> != obj) { + pool.returnObject(obj); + } + } + } <code style="color:#00C">catch</code>(Exception e) { + <code style="color:#0C0">// failed to borrow an object</code> + }</pre> + <p> + See <a href="../../../../org/apache/commons/pool2/BaseObjectPool.html" title="class in org.apache.commons.pool2"><code>BaseObjectPool</code></a> for a simple base implementation.</div> +<dl><dt><span class="strong">Since:</span></dt> + <dd>2.0</dd> +<dt><span class="strong">Version:</span></dt> + <dd>$Revision: 1566605 $</dd> +<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2"><code>PooledObjectFactory</code></a>, +<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2"><code>KeyedObjectPool</code></a>, +<a href="../../../../org/apache/commons/pool2/BaseObjectPool.html" title="class in org.apache.commons.pool2"><code>BaseObjectPool</code></a></dd></dl> +</li> +</ul> +</div> +<div class="summary"> +<ul class="blockList"> +<li class="blockList"> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method_summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span>Methods</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/ObjectPool.html#addObject()">addObject</a></strong>()</code> +<div class="block">Create an object using the <a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2"><code>factory</code></a> or other + implementation dependent mechanism, passivate it, and then place it in + the idle object pool.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code><a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="type parameter in ObjectPool">T</a></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/ObjectPool.html#borrowObject()">borrowObject</a></strong>()</code> +<div class="block">Obtains an instance from this pool.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/ObjectPool.html#clear()">clear</a></strong>()</code> +<div class="block">Clears any objects sitting idle in the pool, releasing any associated + resources (optional operation).</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/ObjectPool.html#close()">close</a></strong>()</code> +<div class="block">Close this pool, and free any resources associated with it.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>int</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/ObjectPool.html#getNumActive()">getNumActive</a></strong>()</code> +<div class="block">Return the number of instances currently borrowed from this pool.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>int</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/ObjectPool.html#getNumIdle()">getNumIdle</a></strong>()</code> +<div class="block">Return the number of instances currently idle in this pool.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/ObjectPool.html#invalidateObject(T)">invalidateObject</a></strong>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="type parameter in ObjectPool">T</a> obj)</code> +<div class="block">Invalidates an object from the pool.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/ObjectPool.html#returnObject(T)">returnObject</a></strong>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="type parameter in ObjectPool">T</a> obj)</code> +<div class="block">Return an instance to the pool.</div> +</td> +</tr> +</table> +</li> +</ul> +</li> +</ul> +</div> +<div class="details"> +<ul class="blockList"> +<li class="blockList"> +<!-- ============ METHOD DETAIL ========== --> +<ul class="blockList"> +<li class="blockList"><a name="method_detail"> +<!-- --> +</a> +<h3>Method Detail</h3> +<a name="borrowObject()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>borrowObject</h4> +<pre><a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="type parameter in ObjectPool">T</a> <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.88">borrowObject</a>() + 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/util/NoSuchElementException.html?is-external=true" title="class or interface in java.util">NoSuchElementException</a>, + <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></pre> +<div class="block">Obtains an instance from this pool. + <p> + Instances returned from this method will have been either newly created + with <a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html#makeObject()"><code>PooledObjectFactory.makeObject()</code></a> or will be a previously + idle object and have been activated with + <a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html#activateObject(org.apache.commons.pool2.PooledObject)"><code>PooledObjectFactory.activateObject(org.apache.commons.pool2.PooledObject<T>)</code></a> and then validated with + <a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html#validateObject(org.apache.commons.pool2.PooledObject)"><code>PooledObjectFactory.validateObject(org.apache.commons.pool2.PooledObject<T>)</code></a>. + <p> + By contract, clients <strong>must</strong> return the borrowed instance + using <a href="../../../../org/apache/commons/pool2/ObjectPool.html#returnObject(T)"><code>returnObject(T)</code></a>, <a href="../../../../org/apache/commons/pool2/ObjectPool.html#invalidateObject(T)"><code>invalidateObject(T)</code></a>, or a related + method as defined in an implementation or sub-interface. + <p> + The behaviour of this method when the pool has been exhausted + is not strictly specified (although it may be specified by + implementations).</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>an instance from this pool.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - after <a href="../../../../org/apache/commons/pool2/ObjectPool.html#close()"><code>close</code></a> has been called on this pool.</dd> +<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/PooledObjectFactory.html#makeObject()"><code>PooledObjectFactory.makeObject()</code></a> throws an + exception.</dd> +<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/util/NoSuchElementException.html?is-external=true" title="class or interface in java.util">NoSuchElementException</a></code> - when the pool is exhausted and cannot or will not return + another instance.</dd></dl> +</li> +</ul> +<a name="returnObject(java.lang.Object)"> +<!-- --> +</a><a name="returnObject(T)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>returnObject</h4> +<pre>void <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.107">returnObject</a>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="type parameter in ObjectPool">T</a> obj) + 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></pre> +<div class="block">Return an instance to the pool. By contract, <code>obj</code> + <strong>must</strong> have been obtained using <a href="../../../../org/apache/commons/pool2/ObjectPool.html#borrowObject()"><code>borrowObject()</code></a> or + a related method as defined in an implementation or sub-interface.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>obj</code> - a <a href="../../../../org/apache/commons/pool2/ObjectPool.html#borrowObject()"><code>borrowed</code></a> instance to be returned.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if an attempt is made to return an object to the pool that + is in any state other than allocated (i.e. borrowed). + Attempting to return an object more than once or attempting + to return an object that was never borrowed from the pool + will trigger this exception.</dd> +<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> - if an instance cannot be returned to the pool</dd></dl> +</li> +</ul> +<a name="invalidateObject(java.lang.Object)"> +<!-- --> +</a><a name="invalidateObject(T)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>invalidateObject</h4> +<pre>void <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.123">invalidateObject</a>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="type parameter in ObjectPool">T</a> obj) + 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></pre> +<div class="block">Invalidates an object from the pool. + <p> + By contract, <code>obj</code> <strong>must</strong> have been obtained + using <a href="../../../../org/apache/commons/pool2/ObjectPool.html#borrowObject()"><code>borrowObject()</code></a> or a related method as defined in an + implementation or sub-interface. + <p> + This method should be used when an object that has been borrowed is + determined (due to an exception or other problem) to be invalid.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>obj</code> - a <a href="../../../../org/apache/commons/pool2/ObjectPool.html#borrowObject()"><code>borrowed</code></a> instance to be disposed.</dd> +<dt><span class="strong">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> - if the instance cannot be invalidated</dd></dl> +</li> +</ul> +<a name="addObject()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>addObject</h4> +<pre>void <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.138">addObject</a>() + 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/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a>, + <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/UnsupportedOperationException.html?is-external=true" title="class or interface in java.lang">UnsupportedOperationException</a></pre> +<div class="block">Create an object using the <a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2"><code>factory</code></a> or other + implementation dependent mechanism, passivate it, and then place it in + the idle object pool. <code>addObject</code> is useful for "pre-loading" + a pool with idle objects. (Optional operation).</div> +<dl><dt><span class="strong">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/PooledObjectFactory.html#makeObject()"><code>PooledObjectFactory.makeObject()</code></a> fails.</dd> +<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - after <a href="../../../../org/apache/commons/pool2/ObjectPool.html#close()"><code>close()</code></a> has been called on this pool.</dd> +<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/UnsupportedOperationException.html?is-external=true" title="class or interface in java.lang">UnsupportedOperationException</a></code> - when this pool cannot add new idle objects.</dd></dl> +</li> +</ul> +<a name="getNumIdle()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getNumIdle</h4> +<pre>int <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.148">getNumIdle</a>()</pre> +<div class="block">Return the number of instances currently idle in this pool. This may be + considered an approximation of the number of objects that can be + <a href="../../../../org/apache/commons/pool2/ObjectPool.html#borrowObject()"><code>borrowed</code></a> without creating any new instances. + Returns a negative value if this information is not available.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the number of instances currently idle in this pool.</dd></dl> +</li> +</ul> +<a name="getNumActive()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getNumActive</h4> +<pre>int <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.155">getNumActive</a>()</pre> +<div class="block">Return the number of instances currently borrowed from this pool. Returns + a negative value if this information is not available.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the number of instances currently borrowed from this pool.</dd></dl> +</li> +</ul> +<a name="clear()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>clear</h4> +<pre>void <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.167">clear</a>() + 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/UnsupportedOperationException.html?is-external=true" title="class or interface in java.lang">UnsupportedOperationException</a></pre> +<div class="block">Clears any objects sitting idle in the pool, releasing any associated + resources (optional operation). Idle objects cleared must be + <a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html#destroyObject(org.apache.commons.pool2.PooledObject)"><code>PooledObjectFactory.destroyObject(PooledObject)</code></a>.</div> +<dl><dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/UnsupportedOperationException.html?is-external=true" title="class or interface in java.lang">UnsupportedOperationException</a></code> - if this implementation does not support the operation</dd> +<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> - if the pool cannot be cleared</dd></dl> +</li> +</ul> +<a name="close()"> +<!-- --> +</a> +<ul class="blockListLast"> +<li class="blockList"> +<h4>close</h4> +<pre>void <a href="../../../../src-html/org/apache/commons/pool2/ObjectPool.html#line.177">close</a>()</pre> +<div class="block">Close this pool, and free any resources associated with it. + <p> + Calling <a href="../../../../org/apache/commons/pool2/ObjectPool.html#addObject()"><code>addObject()</code></a> or <a href="../../../../org/apache/commons/pool2/ObjectPool.html#borrowObject()"><code>borrowObject()</code></a> after invoking this + method on a pool will cause them to throw an <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang"><code>IllegalStateException</code></a>. + <p> + Implementations should silently fail if not all resources can be freed.</div> +</li> +</ul> +</li> +</ul> +</li> +</ul> +</div> +</div> +<!-- ========= END OF CLASS DATA ========= --> +<!-- ======= START OF BOTTOM NAVBAR ====== --> +<div class="bottomNav"><a name="navbar_bottom"> +<!-- --> +</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><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/ObjectPool.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/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2"><span class="strong">Prev Class</span></a></li> +<li><a href="../../../../org/apache/commons/pool2/PooledObject.html" title="interface in org.apache.commons.pool2"><span class="strong">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../../../index.html?org/apache/commons/pool2/ObjectPool.html" target="_top">Frames</a></li> +<li><a href="ObjectPool.html" target="_top">No Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../../allclasses-noframe.html">All 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: </li> +<li>Nested | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </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 © 2001–2014 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> +</body> +</html> \ No newline at end of file
Propchange: websites/production/commons/content/proper/commons-pool/api-2.3/org/apache/commons/pool2/ObjectPool.html ------------------------------------------------------------------------------ svn:eol-style = native Added: websites/production/commons/content/proper/commons-pool/api-2.3/org/apache/commons/pool2/PoolUtils.html ============================================================================== --- websites/production/commons/content/proper/commons-pool/api-2.3/org/apache/commons/pool2/PoolUtils.html (added) +++ websites/production/commons/content/proper/commons-pool/api-2.3/org/apache/commons/pool2/PoolUtils.html Wed Dec 31 14:00:19 2014 @@ -0,0 +1,741 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<meta http-equiv="Content-Type" content="text/html" charset="iso-8859-1"> +<title>PoolUtils (Apache Commons Pool 2.3 API)</title> +<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> +</head> +<body> +<script type="text/javascript"><!-- + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="PoolUtils (Apache Commons Pool 2.3 API)"; + } +//--> +</script> +<noscript> +<div>JavaScript is disabled on your browser.</div> +</noscript> +<!-- ========= START OF TOP NAVBAR ======= --> +<div class="topNav"><a name="navbar_top"> +<!-- --> +</a><a href="#skip-navbar_top" title="Skip navigation links"></a><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="strong">Prev Class</span></a></li> +<li><a href="../../../../org/apache/commons/pool2/SwallowedExceptionListener.html" title="interface in org.apache.commons.pool2"><span class="strong">Next 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 Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_top"> +<li><a href="../../../../allclasses-noframe.html">All 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: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor_summary">Constr</a> | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor_detail">Constr</a> | </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="strong">Since:</span></dt> + <dd>2.0</dd> +<dt><span class="strong">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="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> +<caption><span>Constructors</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colOne" scope="col">Constructor and Description</th> +</tr> +<tr class="altColor"> +<td class="colOne"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#PoolUtils()">PoolUtils</a></strong>()</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="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span>Methods</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Method and Description</th> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static <K,V> <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><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>></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkMinIdle(org.apache.commons.pool2.KeyedObjectPool,%20java.util.Collection,%20int,%20long)">checkMinIdle</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> 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><K> keys, + int minIdle, + long 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 class="rowColor"> +<td class="colFirst"><code>static <K,V> <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><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkMinIdle(org.apache.commons.pool2.KeyedObjectPool,%20K,%20int,%20long)">checkMinIdle</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> keyedPool, + K key, + int minIdle, + long period)</code> +<div class="block">Periodically check the idle object count for the key in the keyedPool.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static <T> <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><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkMinIdle(org.apache.commons.pool2.ObjectPool,%20int,%20long)">checkMinIdle</a></strong>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T> pool, + int minIdle, + long period)</code> +<div class="block">Periodically check the idle object count for the pool.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>static void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkRethrow(java.lang.Throwable)">checkRethrow</a></strong>(<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> 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 class="altColor"> +<td class="colFirst"><code>static <K,V> <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.KeyedObjectPool)">erodingPool</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> keyedPool)</code> +<div class="block">Returns a pool that adaptively decreases its size when idle objects are + no longer needed.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>static <K,V> <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.KeyedObjectPool,%20float)">erodingPool</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> keyedPool, + float factor)</code> +<div class="block">Returns a pool that adaptively decreases its size when idle objects are + no longer needed.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static <K,V> <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.KeyedObjectPool,%20float,%20boolean)">erodingPool</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> keyedPool, + float factor, + boolean perKey)</code> +<div class="block">Returns a pool that adaptively decreases its size when idle objects are + no longer needed.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>static <T> <a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.ObjectPool)">erodingPool</a></strong>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T> pool)</code> +<div class="block">Returns a pool that adaptively decreases its size when idle objects are + no longer needed.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static <T> <a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.ObjectPool,%20float)">erodingPool</a></strong>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T> pool, + float factor)</code> +<div class="block">Returns a pool that adaptively decreases its size when idle objects are + no longer needed.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>static <K,V> void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill(org.apache.commons.pool2.KeyedObjectPool,%20java.util.Collection,%20int)">prefill</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> 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><K> keys, + int 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 class="altColor"> +<td class="colFirst"><code>static <K,V> void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill(org.apache.commons.pool2.KeyedObjectPool,%20K,%20int)">prefill</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> keyedPool, + K key, + int 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 class="rowColor"> +<td class="colFirst"><code>static <T> void</code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill(org.apache.commons.pool2.ObjectPool,%20int)">prefill</a></strong>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T> pool, + int count)</code> +<div class="block">Call <code>addObject()</code> on <code>pool</code> <code>count</code> + number of times.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static <K,V> <a href="../../../../org/apache/commons/pool2/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2">KeyedPooledObjectFactory</a><K,V></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#synchronizedKeyedPooledFactory(org.apache.commons.pool2.KeyedPooledObjectFactory)">synchronizedKeyedPooledFactory</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2">KeyedPooledObjectFactory</a><K,V> keyedFactory)</code> +<div class="block">Returns a synchronized (thread-safe) KeyedPooledObjectFactory backed by + the specified KeyedPoolableObjectFactory.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>static <K,V> <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#synchronizedPool(org.apache.commons.pool2.KeyedObjectPool)">synchronizedPool</a></strong>(<a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> keyedPool)</code> +<div class="block">Returns a synchronized (thread-safe) KeyedObjectPool backed by the + specified KeyedObjectPool.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static <T> <a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#synchronizedPool(org.apache.commons.pool2.ObjectPool)">synchronizedPool</a></strong>(<a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T> pool)</code> +<div class="block">Returns a synchronized (thread-safe) ObjectPool backed by the specified + ObjectPool.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>static <T> <a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2">PooledObjectFactory</a><T></code></td> +<td class="colLast"><code><strong><a href="../../../../org/apache/commons/pool2/PoolUtils.html#synchronizedPooledFactory(org.apache.commons.pool2.PooledObjectFactory)">synchronizedPooledFactory</a></strong>(<a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2">PooledObjectFactory</a><T> 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 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,%20int)" 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 <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 void <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> 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="strong">Parameters:</span></dt><dd><code>t</code> - The Throwable to check</dd> +<dt><span class="strong">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 <T> <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> <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><T> pool, + int minIdle, + long 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="strong">Type Parameters:</span></dt><dd><code>T</code> - the type of objects in the pool</dd><dt><span class="strong">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,%20long,%20long)" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a>.</dd> +<dt><span class="strong">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="strong">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,%20long,%20long)" 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 <K,V> <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> <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><K,V> keyedPool, + K key, + int minIdle, + long 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="strong">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="strong">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,%20long,%20long)" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a>.</dd> +<dt><span class="strong">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="strong">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,%20long,%20long)" 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 <K,V> <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><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>> <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><K,V> 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><K> keys, + int minIdle, + long 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="strong">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="strong">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,%20long,%20long)" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a>.</dd> +<dt><span class="strong">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="strong">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,%20long,%20long)" title="class or interface in java.util"><code>Timer.schedule(TimerTask, long, long)</code></a> + .</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#checkMinIdle(org.apache.commons.pool2.KeyedObjectPool,%20K,%20int,%20long)"><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 <T> void <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><T> pool, + int 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="strong">Type Parameters:</span></dt><dd><code>T</code> - the type of objects in the pool</dd><dt><span class="strong">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="strong">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 <K,V> void <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><K,V> keyedPool, + K key, + int 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="strong">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="strong">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="strong">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 <K,V> void <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><K,V> 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><K> keys, + int 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,%20K,%20int)"><code>prefill(KeyedObjectPool, Object, int)</code></a> + for each key in the <code>keys</code> collection.</div> +<dl><dt><span class="strong">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="strong">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="strong">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="strong">See Also:</span></dt><dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#prefill(org.apache.commons.pool2.KeyedObjectPool,%20K,%20int)"><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 <T> <a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T> <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><T> 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="strong">Type Parameters:</span></dt><dd><code>T</code> - the type of objects in the pool</dd><dt><span class="strong">Parameters:</span></dt><dd><code>pool</code> - the ObjectPool to be "wrapped" in a synchronized ObjectPool.</dd> +<dt><span class="strong">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 <K,V> <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> <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><K,V> 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="strong">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="strong">Parameters:</span></dt><dd><code>keyedPool</code> - the KeyedObjectPool to be "wrapped" in a synchronized + KeyedObjectPool.</dd> +<dt><span class="strong">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 <T> <a href="../../../../org/apache/commons/pool2/PooledObjectFactory.html" title="interface in org.apache.commons.pool2">PooledObjectFactory</a><T> <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><T> factory)</pre> +<div class="block">Returns a synchronized (thread-safe) PooledObjectFactory backed by the + specified PooledObjectFactory.</div> +<dl><dt><span class="strong">Type Parameters:</span></dt><dd><code>T</code> - the type of objects in the pool</dd><dt><span class="strong">Parameters:</span></dt><dd><code>factory</code> - the PooledObjectFactory to be "wrapped" in a synchronized + PooledObjectFactory.</dd> +<dt><span class="strong">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 <K,V> <a href="../../../../org/apache/commons/pool2/KeyedPooledObjectFactory.html" title="interface in org.apache.commons.pool2">KeyedPooledObjectFactory</a><K,V> <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><K,V> keyedFactory)</pre> +<div class="block">Returns a synchronized (thread-safe) KeyedPooledObjectFactory backed by + the specified KeyedPoolableObjectFactory.</div> +<dl><dt><span class="strong">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="strong">Parameters:</span></dt><dd><code>keyedFactory</code> - the KeyedPooledObjectFactory to be "wrapped" in a + synchronized KeyedPooledObjectFactory.</dd> +<dt><span class="strong">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 <T> <a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T> <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><T> 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="strong">Type Parameters:</span></dt><dd><code>T</code> - the type of objects in the pool</dd><dt><span class="strong">Parameters:</span></dt><dd><code>pool</code> - the ObjectPool to be decorated so it shrinks its idle count + when possible.</dd> +<dt><span class="strong">Returns:</span></dt><dd>a pool that adaptively decreases its size when idle objects are + no longer needed.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.ObjectPool,%20float)"><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 <T> <a href="../../../../org/apache/commons/pool2/ObjectPool.html" title="interface in org.apache.commons.pool2">ObjectPool</a><T> <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><T> pool, + float 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="strong">Type Parameters:</span></dt><dd><code>T</code> - the type of objects in the pool</dd><dt><span class="strong">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 < factor < 1 then the pool + shrinks more aggressively. If 1 < factor then the pool + shrinks less aggressively.</dd> +<dt><span class="strong">Returns:</span></dt><dd>a pool that adaptively decreases its size when idle objects are + no longer needed.</dd><dt><span class="strong">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 <K,V> <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> <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><K,V> 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="strong">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="strong">Parameters:</span></dt><dd><code>keyedPool</code> - the KeyedObjectPool to be decorated so it shrinks its idle + count when possible.</dd> +<dt><span class="strong">Returns:</span></dt><dd>a pool that adaptively decreases its size when idle objects are + no longer needed.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.KeyedObjectPool,%20float)"><code>erodingPool(KeyedObjectPool, float)</code></a>, +<a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.KeyedObjectPool,%20float,%20boolean)"><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 <K,V> <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> <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><K,V> keyedPool, + float 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="strong">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="strong">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 < factor < 1 then the pool + shrinks more aggressively. If 1 < factor then the pool + shrinks less aggressively.</dd> +<dt><span class="strong">Returns:</span></dt><dd>a pool that adaptively decreases its size when idle objects are + no longer needed.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/commons/pool2/PoolUtils.html#erodingPool(org.apache.commons.pool2.KeyedObjectPool,%20float,%20boolean)"><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 <K,V> <a href="../../../../org/apache/commons/pool2/KeyedObjectPool.html" title="interface in org.apache.commons.pool2">KeyedObjectPool</a><K,V> <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><K,V> keyedPool, + float factor, + boolean 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="strong">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="strong">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 < factor < 1 then the pool + shrinks more aggressively. If 1 < factor then the pool + shrinks less aggressively.</dd><dd><code>perKey</code> - when true, each key is treated independently.</dd> +<dt><span class="strong">Returns:</span></dt><dd>a pool that adaptively decreases its size when idle objects are + no longer needed.</dd><dt><span class="strong">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,%20float)"><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><a href="#skip-navbar_bottom" title="Skip navigation links"></a><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="strong">Prev Class</span></a></li> +<li><a href="../../../../org/apache/commons/pool2/SwallowedExceptionListener.html" title="interface in org.apache.commons.pool2"><span class="strong">Next 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 Frames</a></li> +</ul> +<ul class="navList" id="allclasses_navbar_bottom"> +<li><a href="../../../../allclasses-noframe.html">All 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: </li> +<li>Nested | </li> +<li>Field | </li> +<li><a href="#constructor_summary">Constr</a> | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li><a href="#constructor_detail">Constr</a> | </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 © 2001–2014 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> +</body> +</html> \ No newline at end of file Propchange: websites/production/commons/content/proper/commons-pool/api-2.3/org/apache/commons/pool2/PoolUtils.html ------------------------------------------------------------------------------ svn:eol-style = native