/usr/share/doc/libcommons-pool-java/api/overview-summary.html is in libcommons-pool-java-doc 1.6-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 | <!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 (version 1.7.0_21) on Fri May 24 11:14:13 UTC 2013 -->
<title>Overview (Apache Commons Object Pooling Package)</title>
<meta name="date" content="2013-05-24">
<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="Overview (Apache Commons Object Pooling Package)";
}
//-->
</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 class="navBarCell1Rev">Overview</li>
<li>Package</li>
<li>Class</li>
<li><a href="index-all.html">Index</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
<li><a href="overview-summary.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>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 class="title">Apache Commons Object Pooling Package</h1>
</div>
<div class="header">
<div class="subTitle">
<div class="block">
Generic Object pooling API with several implementations.</div>
</div>
<p>See: <a href="#overview_description">Description</a></p>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Packages table, listing packages, and an explanation">
<caption><span>Packages</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="org/apache/commons/pool/package-summary.html">org.apache.commons.pool</a></td>
<td class="colLast">
<div class="block">
Object pooling API.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="org/apache/commons/pool/impl/package-summary.html">org.apache.commons.pool.impl</a></td>
<td class="colLast">
<div class="block">
Object pooling API implementations.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="footer"><a name="overview_description">
<!-- -->
</a>
<div class="subTitle">
<div class="block"><p>
Generic Object pooling API with several implementations.
</p>
<p>
The <code>org.apache.commons.pool</code> package defines a simple
interface for a pool of object instances, and a handful of base
classes that may be useful when creating pool implementations.
The API supports pooling of unique objects which can be requested
via a key as well as pools where all objects are equivalent.
</p>
<p>
The <code>org.apache.commons.pool.impl</code> package contains
several pool implementations.
<a href="org/apache/commons/pool/impl/StackObjectPool.html" title="class in org.apache.commons.pool.impl"><code>StackObjectPool</code></a>
is useful for supporting reuse of a limited number of instances while
allowing new instances to be created as needed to support high demand.
<a href="org/apache/commons/pool/impl/GenericObjectPool.html" title="class in org.apache.commons.pool.impl"><code>GenericObjectPool</code></a> has many configuration options and can support
a limited set of objects such as would be useful in a database
connection pool.
<a href="org/apache/commons/pool/impl/SoftReferenceObjectPool.html" title="class in org.apache.commons.pool.impl"><code>SoftReferenceObjectPool</code></a> has no limit on the number of objects in the
pool, but the garbage collector can remove idle objects from the pool
as needed. There are also keyed versions of the first two.
</p>
<p>
Here is a simple example of pooling <code>HashMap</code>'s. First
create an <a href="org/apache/commons/pool/ObjectPoolFactory.html" title="interface in org.apache.commons.pool"><code>ObjectPoolFactory</code></a>
</p>
<pre>
public class HashMapFactory
extends <a href="org/apache/commons/pool/BasePoolableObjectFactory.html" title="class in org.apache.commons.pool"><code>BasePoolableObjectFactory</code></a>
{
/**
* Creates an instance that can be returned by the pool.
* @return an instance that can be returned by the pool.
*/
public Object makeObject()
throws Exception
{
return new HashMap();
}
/**
* Uninitialize an instance to be returned to the pool.
* @param obj the instance to be passivated
*/
public void passivateObject(Object obj)
throws Exception
{
Map map = (Map)obj;
map.clear();
}
}
</pre>
<p>
A class that makes frequent use of a Map could then use a pool
as shown below:
</p>
<pre>
public class Foo
{
private <a href="org/apache/commons/pool/ObjectPool.html" title="interface in org.apache.commons.pool"><code>ObjectPool</code></a> pool;
public Foo()
{
<a href="org/apache/commons/pool/PoolableObjectFactory.html" title="interface in org.apache.commons.pool"><code>PoolableObjectFactory</code></a> factory = new HashMapFactory();
pool = new StackObjectPool(factory, 1000);
}
public doSomething()
{
...
Map map = null;
try
{
map = (Map)pool.borrowObject();
// use map
...
}
finally
{
if (map != null)
{
pool.returnObject(map);
}
}
...
}
}
</pre>
<p>
The above example shows how one would use an
<a href="org/apache/commons/pool/ObjectPool.html" title="interface in org.apache.commons.pool"><code>ObjectPool</code></a>. The other supplied
implementations or another special purpose pool would be used similarly.
</p></div>
</div>
</div>
<!-- ======= 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 class="navBarCell1Rev">Overview</li>
<li>Package</li>
<li>Class</li>
<li><a href="index-all.html">Index</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
<li><a href="overview-summary.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>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><small>Copyright © 2001-2012 Apache Software Foundation. Documenation generated May 24 2013</small>.</small></p>
</body>
</html>
|