User: slaboure
  Date: 01/09/20 12:30:45

  Modified:    src/main/org/jboss/ejb/plugins AbstractInstancePool.java
                        EntityInstancePool.java
                        MessageDrivenInstancePool.java
                        StatelessSessionInstancePool.java
  Log:
  Instance pooling activated for SLSB and MDB
  
  Revision  Changes    Path
  1.17      +30 -4     jboss/src/main/org/jboss/ejb/plugins/AbstractInstancePool.java
  
  Index: AbstractInstancePool.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/AbstractInstancePool.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- AbstractInstancePool.java 2001/09/01 19:50:30     1.16
  +++ AbstractInstancePool.java 2001/09/20 19:30:45     1.17
  @@ -36,8 +36,9 @@
   *   @author <a href="mailto:[EMAIL PROTECTED]";>Rickard Öberg</a>
   *   @author <a href="mailto:[EMAIL PROTECTED]";>Marc Fleury</a>
   *  @author <a href="mailto:[EMAIL PROTECTED]";>Andreas Schaefer</a>
  + * @author <a href="mailto:[EMAIL PROTECTED]";>Sacha Labourey</a>
   *   
  -*  @version $Revision: 1.16 $
  +*  @version $Revision: 1.17 $
   *
   *  <p><b>Revisions:</b>
   *  <p><b>20010704 marcf:</b>
  @@ -48,6 +49,10 @@
   *  <ul>
   *  <li>- Added statistics gathering
   *  </ul>
  +*  <p><b>20010920 Sacha Labourey:</b>
  +*  <ul>
  +*  <li>- Pooling made optional and only activated in concrete subclasses for SLSB 
and MDB
  +*  </ul>
   */
   public abstract class AbstractInstancePool
   implements InstancePool, XmlLoadable
  @@ -66,7 +71,10 @@
      protected CountStatistic mDestroy = new CountStatistic( "Destroy", "", "Beans 
destroyed in Pool" );
      /** Counter of all the ready Beans within the Pool (which are not used now) **/
      protected CountStatistic mReadyBean = new CountStatistic( "ReadyBean", "", 
"Numbers of ready Bean Pool" );
  -
  +   
  +   // determine if we reuse EnterpriseContext objects i.e. if we actually do pooling
  +   protected boolean reclaim = false;
  +   
       // Static --------------------------------------------------------
       
       // Constructors --------------------------------------------------
  @@ -111,6 +119,16 @@
       public void destroy()
       {
       }
  +
  +    public boolean getReclaim()
  +    {
  +       return reclaim;
  +    }
  +
  +    public void setReclaim(boolean reclaim)
  +    {
  +       this.reclaim = reclaim;
  +    }
       
       /**
       *   Get an instance without identity.
  @@ -161,10 +179,18 @@
           if (pool.size() < maxSize)
           {
               
  -            // We do not reuse but create a brand new instance simplifies the design
  +            // If (!reclaim), we do not reuse but create a brand new instance 
simplifies the design
               try {
                   mReadyBean.add();
  -                pool.push(create(container.createBeanClassInstance()));
  +                if (this.reclaim)
  +                {
  +                   pool.push(ctx);                  
  +                }
  +                else
  +                {
  +                   discard (ctx);
  +                   pool.push(create(container.createBeanClassInstance()));          
        
  +                }
               } catch (Exception ignored) {}          
               //pool.push(ctx);
           } else
  
  
  
  1.15      +7 -13     jboss/src/main/org/jboss/ejb/plugins/EntityInstancePool.java
  
  Index: EntityInstancePool.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/EntityInstancePool.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- EntityInstancePool.java   2001/08/09 20:27:54     1.14
  +++ EntityInstancePool.java   2001/09/20 19:30:45     1.15
  @@ -21,13 +21,19 @@
    *   @author <a href="mailto:[EMAIL PROTECTED]";>Rickard Öberg</a>
    *  @author <a href="mailto:[EMAIL PROTECTED]";>Marc Fleury</a>
    *  @author <a href="mailto:[EMAIL PROTECTED]";>Andreas Schaefer</a>
  - *   @version $Revision: 1.14 $
  + * @author <a href="mailto:[EMAIL PROTECTED]";>Sacha Labourey</a>
  + *   @version $Revision: 1.15 $
    *      
    * <p><b>Revisions:</b>
    * <p><b>20010718 andreas schaefer:</b>
    * <ul>
    * <li>- Added statistics gathering
    * </ul>
  +*  <p><b>20010920 Sacha Labourey:</b>
  +*  <ul>
  +*  <li>- Moved "reclaim" flag (set by Bill Burke) to the AbstractInstancePool level.
  +*        It can now be used for SLSB and MDB (pooling activated)
  +*  </ul>
    */
   public class EntityInstancePool
      extends AbstractInstancePool
  @@ -51,18 +57,6 @@
       *
       * @param   ctx  
       */
  -   private boolean reclaim = false;
  -
  -   public boolean getReclaim()
  -   {
  -      return reclaim;
  -   }
  -
  -   public void setReclaim(boolean reclaim)
  -   {
  -      this.reclaim = reclaim;
  -   }
  -
      public synchronized void free(EnterpriseContext ctx)
      {
          // If transaction still present don't do anything (let the instance be GC)
  
  
  
  1.7       +9 -1      
jboss/src/main/org/jboss/ejb/plugins/MessageDrivenInstancePool.java
  
  Index: MessageDrivenInstancePool.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/MessageDrivenInstancePool.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- MessageDrivenInstancePool.java    2001/08/03 17:15:44     1.6
  +++ MessageDrivenInstancePool.java    2001/09/20 19:30:45     1.7
  @@ -19,13 +19,18 @@
    *   @author <a href="mailto:[EMAIL PROTECTED]";>Rickard Öberg</a>
    *      @author <a href="mailto:[EMAIL PROTECTED]";>Peter Antman</a>.
    * @author <a href="mailto:[EMAIL PROTECTED]";>Andreas Schaefer</a>
  - *   @version $Revision: 1.6 $
  + * @author <a href="mailto:[EMAIL PROTECTED]";>Sacha Labourey</a>
  + *   @version $Revision: 1.7 $
    *      
    * <p><b>Revisions:</b>
    * <p><b>20010718 andreas schaefer:</b>
    * <ul>
    * <li>- Added Statistics Gathering
    * </ul>
  +*  <p><b>20010920 Sacha Labourey:</b>
  +*  <ul>
  +*  <li>- Activate pooling for MDB
  +*  </ul>
    */
   public class MessageDrivenInstancePool
      extends AbstractInstancePool
  @@ -44,6 +49,9 @@
      public void init()
         throws Exception
      {
  +      super.init();
  +      // for MDB, we *do* pool
  +      this.reclaim = true;
      }
       
      // Package protected ---------------------------------------------
  
  
  
  1.8       +9 -1      
jboss/src/main/org/jboss/ejb/plugins/StatelessSessionInstancePool.java
  
  Index: StatelessSessionInstancePool.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/StatelessSessionInstancePool.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- StatelessSessionInstancePool.java 2001/08/03 17:15:44     1.7
  +++ StatelessSessionInstancePool.java 2001/09/20 19:30:45     1.8
  @@ -18,13 +18,18 @@
    *   @see <related>
    *   @author <a href="mailto:[EMAIL PROTECTED]";>Rickard Öberg</a>
    * @author <a href="mailto:[EMAIL PROTECTED]";>Andreas Schaefer</a>
  - *   @version $Revision: 1.7 $
  + * @author <a href="mailto:[EMAIL PROTECTED]";>Sacha Labourey</a>
  + *   @version $Revision: 1.8 $
    *      
    * <p><b>Revisions:</b>
    * <p><b>20010718 andreas schaefer:</b>
    * <ul>
    * <li>- Added Statistics Gathering
    * </ul>
  +*  <p><b>20010920 Sacha Labourey:</b>
  +*  <ul>
  +*  <li>- Activate pooling for SLSB
  +*  </ul>
    */
   public class StatelessSessionInstancePool
      extends AbstractInstancePool
  @@ -43,6 +48,9 @@
      public void init()
         throws Exception
      {
  +      super.init();
  +      // for SLSB, we *do* pool
  +      this.reclaim = true;
      }
       
      // Package protected ---------------------------------------------
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to