Author: cziegeler
Date: Wed Feb  2 10:48:01 2005
New Revision: 149545

URL: http://svn.apache.org/viewcvs?view=rev&rev=149545
Log:
Rename handler and subclass to avoid code duplication

Added:
    
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/PoolableComponentHandler.java
      - copied, changed from r149543, 
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/NewPoolableComponentHandler.java
Removed:
    
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/NewPoolableComponentHandler.java
Modified:
    cocoon/trunk/src/core/java/org/apache/cocoon/components/ComponentInfo.java
    
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/AbstractComponentHandler.java

Modified: 
cocoon/trunk/src/core/java/org/apache/cocoon/components/ComponentInfo.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/core/java/org/apache/cocoon/components/ComponentInfo.java?view=diff&r1=149544&r2=149545
==============================================================================
--- cocoon/trunk/src/core/java/org/apache/cocoon/components/ComponentInfo.java 
(original)
+++ cocoon/trunk/src/core/java/org/apache/cocoon/components/ComponentInfo.java 
Wed Feb  2 10:48:01 2005
@@ -28,6 +28,7 @@
     public static final int MODEL_PRIMITIVE = 0;
     public static final int MODEL_SINGLETON = 1;
     public static final int MODEL_POOLED    = 2;
+    public static final int MODEL_NON_THREAD_SAFE_POOLED = 3;
     
     private int model;
     private String initMethodName;
@@ -154,6 +155,10 @@
         final String model = attr.getAttribute("model", null);
         if ( "pooled".equals(model) ) {
             this.setModel(ComponentInfo.MODEL_POOLED);
+            this.setPoolInMethodName(attr.getAttribute("pool-in", null));
+            this.setPoolOutMethodName(attr.getAttribute("pool-out", null));
+        } else if ("non-thread-safe-pooled".equals(model)) {
+            this.setModel(ComponentInfo.MODEL_NON_THREAD_SAFE_POOLED);
             this.setPoolInMethodName(attr.getAttribute("pool-in", null));
             this.setPoolOutMethodName(attr.getAttribute("pool-out", null));
         } else if ( "singleton".equals(model) ) {

Modified: 
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/AbstractComponentHandler.java
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/AbstractComponentHandler.java?view=diff&r1=149544&r2=149545
==============================================================================
--- 
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/AbstractComponentHandler.java
 (original)
+++ 
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/AbstractComponentHandler.java
 Wed Feb  2 10:48:01 2005
@@ -97,7 +97,8 @@
 
         if( Poolable.class.isAssignableFrom( componentClass ) ) {
             numInterfaces++;
-            info.setModel(ComponentInfo.MODEL_POOLED);
+            // FIXME - change this later on to MODEL_POOLED
+            info.setModel(ComponentInfo.MODEL_NON_THREAD_SAFE_POOLED);
         }
 
         if( numInterfaces > 1 ) {
@@ -130,8 +131,10 @@
             factory = new ComponentFactory(componentEnv, info);
         }
 
-        if( info.getModel() == ComponentInfo.MODEL_POOLED )  {
+        if( info.getModel() == ComponentInfo.MODEL_NON_THREAD_SAFE_POOLED)  {
             handler = new NonThreadSafePoolableComponentHandler( info, 
componentEnv.logger, factory, info.getConfiguration() );
+        } else if( info.getModel() == ComponentInfo.MODEL_POOLED ) {
+            handler = new PoolableComponentHandler( info, componentEnv.logger, 
factory, info.getConfiguration() );
         } else if( info.getModel() == ComponentInfo.MODEL_SINGLETON ) {
             handler = new ThreadSafeComponentHandler( info, 
componentEnv.logger, factory );
         } else {

Copied: 
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/PoolableComponentHandler.java
 (from r149543, 
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/NewPoolableComponentHandler.java)
URL: 
http://svn.apache.org/viewcvs/cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/PoolableComponentHandler.java?view=diff&rev=149545&p1=cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/NewPoolableComponentHandler.java&r1=149543&p2=cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/PoolableComponentHandler.java&r2=149545
==============================================================================
--- 
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/NewPoolableComponentHandler.java
 (original)
+++ 
cocoon/trunk/src/core/java/org/apache/cocoon/core/container/handler/PoolableComponentHandler.java
 Wed Feb  2 10:48:01 2005
@@ -56,9 +56,9 @@
  *  but not pooled.</li>
  * </ul>
  *
- * @version CVS $Id$
+ * @version $Id$
  */
-public class NewPoolableComponentHandler
+public class PoolableComponentHandler
 extends NonThreadSafePoolableComponentHandler {
     
     /**
@@ -69,7 +69,7 @@
      *                managed by the ComponentHandler.
      * @param config The configuration to use to configure the pool.
      */
-    public NewPoolableComponentHandler( final ComponentInfo info,
+    public PoolableComponentHandler( final ComponentInfo info,
                                      final Logger logger,
                                      final ComponentFactory factory,
                                      final Configuration config )
@@ -152,9 +152,9 @@
     protected static final class ProxyHandler implements InvocationHandler, 
Core.CleanupTask {
         
         private ThreadLocal componentHolder = new InheritableThreadLocal();
-        private final NewPoolableComponentHandler handler;
+        private final PoolableComponentHandler handler;
         
-        public ProxyHandler(NewPoolableComponentHandler handler) {
+        public ProxyHandler(PoolableComponentHandler handler) {
             this.handler = handler;
         }
         


Reply via email to