[prev in list] [next in list] [prev in thread] [next in thread]
List: xml-cocoon-dev
Subject: cvs commit: xml-cocoon/src/org/apache/cocoon/util ComponentPool.java
From: dims () apache ! org
Date: 2001-02-28 17:40:31
[Download RAW message or body]
dims 01/02/28 09:40:30
Modified: src/org/apache/cocoon Tag: xml-cocoon2
CocoonComponentSelector.java
DefaultComponentManager.java
src/org/apache/cocoon/util Tag: xml-cocoon2
ComponentPool.java
Log:
When running Apache JMeter with a very high load. AbstractPool is not enough.
So switching to ThreadSafePool instead.
Revision Changes Path
No revision
No revision
1.1.2.24 +2 -2 \
xml-cocoon/src/org/apache/cocoon/Attic/CocoonComponentSelector.java
Index: CocoonComponentSelector.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/Attic/CocoonComponentSelector.java,v
retrieving revision 1.1.2.23
retrieving revision 1.1.2.24
diff -u -r1.1.2.23 -r1.1.2.24
--- CocoonComponentSelector.java 2001/02/22 17:10:17 1.1.2.23
+++ CocoonComponentSelector.java 2001/02/28 17:40:24 1.1.2.24
@@ -43,7 +43,7 @@
/** Default component manager for Cocoon's non sitemap components.
* @author <a href="mailto:bloritsch@apache.org">Berin Loritsch</a>
* @author <a href="mailto:paul@luminas.co.uk">Paul Russell</a>
- * @version CVS $Revision: 1.1.2.23 $ $Date: 2001/02/22 17:10:17 $
+ * @version CVS $Revision: 1.1.2.24 $ $Date: 2001/02/28 17:40:24 $
*/
public class CocoonComponentSelector implements Contextualizable, \
ComponentSelector, Composer, Configurable, ThreadSafe, Loggable { protected Logger \
log; @@ -228,7 +228,7 @@
ComponentFactory cf = new ComponentFactory(componentClass, \
(Configuration)configurations.get(hint), this.manager, this.context); \
cf.setLogger(this.log);
- pool = new ComponentPool(cf, new ComponentPoolController());
+ pool = new ComponentPool(cf);
pool.setLogger(this.log);
pool.init();
} catch (Exception e) {
1.1.2.22 +2 -2 \
xml-cocoon/src/org/apache/cocoon/Attic/DefaultComponentManager.java
Index: DefaultComponentManager.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/Attic/DefaultComponentManager.java,v
retrieving revision 1.1.2.21
retrieving revision 1.1.2.22
diff -u -r1.1.2.21 -r1.1.2.22
--- DefaultComponentManager.java 2001/02/22 17:10:20 1.1.2.21
+++ DefaultComponentManager.java 2001/02/28 17:40:25 1.1.2.22
@@ -41,7 +41,7 @@
/** Default component manager for Cocoon's non sitemap components.
* @author <a href="mailto:paul@luminas.co.uk">Paul Russell</a>
- * @version CVS $Revision: 1.1.2.21 $ $Date: 2001/02/22 17:10:20 $
+ * @version CVS $Revision: 1.1.2.22 $ $Date: 2001/02/28 17:40:25 $
*/
public class DefaultComponentManager implements ComponentManager, Loggable, \
Configurable, Contextualizable {
@@ -266,7 +266,7 @@
ComponentFactory cf = new ComponentFactory(componentClass, \
(Configuration)configurations.get(role), this, this.context); \
cf.setLogger(this.log);
- pool = new ComponentPool(cf, new ComponentPoolController());
+ pool = new ComponentPool(cf);
pool.setLogger(this.log);
pool.init();
} catch (Exception e) {
No revision
No revision
1.1.2.9 +6 -44 xml-cocoon/src/org/apache/cocoon/util/Attic/ComponentPool.java
Index: ComponentPool.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/util/Attic/ComponentPool.java,v
retrieving revision 1.1.2.8
retrieving revision 1.1.2.9
diff -u -r1.1.2.8 -r1.1.2.9
--- ComponentPool.java 2001/02/28 14:11:06 1.1.2.8
+++ ComponentPool.java 2001/02/28 17:40:29 1.1.2.9
@@ -10,7 +10,7 @@
import org.apache.avalon.Poolable;
import org.apache.avalon.ThreadSafe;
import org.apache.avalon.Loggable;
-import org.apache.avalon.util.pool.AbstractPool;
+import org.apache.avalon.util.pool.ThreadSafePool;
import org.apache.avalon.util.pool.ObjectFactory;
import org.apache.avalon.util.pool.PoolController;
import org.apache.cocoon.ComponentFactory;
@@ -23,68 +23,30 @@
*
* @author <a href="mailto:Giacomo.Pati@pwr.ch">Giacomo Pati</a>
*/
-public class ComponentPool extends AbstractPool implements ThreadSafe, Loggable {
+public class ComponentPool extends ThreadSafePool implements ThreadSafe, Loggable \
{
public final static int DEFAULT_POOL_SIZE = 8;
private Logger log;
- public ComponentPool(final ObjectFactory factory,
- final PoolController controller) throws Exception {
- super(factory, controller, DEFAULT_POOL_SIZE/2, DEFAULT_POOL_SIZE);
+ public ComponentPool(final ObjectFactory factory) throws Exception {
+ super(factory, DEFAULT_POOL_SIZE/2, DEFAULT_POOL_SIZE);
}
public ComponentPool(final ObjectFactory factory,
- final PoolController controller,
final int initial) throws Exception {
- super(factory, controller, initial, initial);
+ super(factory, initial, initial);
}
public ComponentPool(final ObjectFactory factory,
- final PoolController controller,
final int initial,
final int maximum) throws Exception {
- super(factory, controller, initial, maximum);
+ super(factory, initial, maximum);
}
public void setLogger(Logger log) {
if (this.log == null) {
this.log = log;
- }
- }
-
- /**
- * Retrieve an object from pool.
- *
- * @return an object from Pool
- */
- public synchronized final Poolable get() throws Exception {
- synchronized(this) {
- Poolable component = super.get();
- log.debug(
- (new StringBuffer("ComponentPool retrieved "))
- .append(component.getClass().getName())
- .append(" (").append(component.toString()).append(")")
- .toString()
- );
- return component;
- }
- }
-
- /**
- * Place an object in pool.
- *
- * @param poolable the object to be placed in pool
- */
- public synchronized final void put(final Poolable poolable) {
- synchronized(this) {
- super.put(poolable);
- log.debug(
- (new StringBuffer("ComponentPool returned "))
- .append(poolable.getClass().getName())
- .append(" (").append(poolable.toString()).append(")")
- .toString()
- );
}
}
}
----------------------------------------------------------------------
In case of troubles, e-mail: webmaster@xml.apache.org
To unsubscribe, e-mail: cocoon-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-cvs-help@xml.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic