User: d_jencks
  Date: 01/08/16 22:37:35

  Modified:    src/main/org/jboss/pool ObjectPool.java
  Log:
  preliminary fix of logging: more logging cleanup soon
  
  Revision  Changes    Path
  1.3       +64 -34    jbosspool/src/main/org/jboss/pool/ObjectPool.java
  
  Index: ObjectPool.java
  ===================================================================
  RCS file: /cvsroot/jboss/jbosspool/src/main/org/jboss/pool/ObjectPool.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ObjectPool.java   2001/07/02 03:20:08     1.2
  +++ ObjectPool.java   2001/08/17 05:37:35     1.3
  @@ -9,6 +9,8 @@
   import java.util.HashSet;
   import java.util.Iterator;
   
  +import org.jboss.logging.log4j.JBossCategory;
  +
   /**
    * A generic object pool.  You must provide a PoolObjectFactory (or the class
    * of a Java Bean) so the pool knows what kind of objects to create.  It has
  @@ -38,6 +40,8 @@
       static {
           collector.start();
       }
  +   private JBossCategory log = 
(JBossCategory)JBossCategory.getInstance(ObjectPool.class);
  +
   
       private PoolObjectFactory factory;
       private String poolName;
  @@ -57,7 +61,7 @@
       private int blockingTimeout = -1;// meaning forever
       private boolean trackLastUsed = false;
       private boolean invalidateOnError = false;
  -    private PrintWriter logWriter = null;
  +    // private PrintWriter logWriter = null;
       private Object resizeLock = new Object();
   
       /**
  @@ -156,7 +160,8 @@
        * Gets a log writer used to record pool events.
        */
       public PrintWriter getLogWriter() {
  -        return logWriter;
  +        return null;
  +        // return logWriter;
       }
   
       /**
  @@ -166,9 +171,9 @@
        *    initialized.
        */
       public void setLogWriter(PrintWriter writer) {
  -        if(objects != null)
  +        /*if(objects != null)
               throw new IllegalStateException(INITIALIZED);
  -        logWriter = writer;
  +            logWriter = writer;*/ // ignored
       }
   
       /**
  @@ -185,7 +190,7 @@
           minSize = size;
           if(maxSize != 0 && minSize > maxSize) {
               maxSize = minSize;
  -            log("WARNING: pool max size set to "+maxSize+" to stay >= min size");
  +            log.warn("WARNING: pool max size set to "+maxSize+" to stay >= min 
size");
           }
       }
   
  @@ -215,7 +220,7 @@
           maxSize = size;
           if(maxSize != 0 && minSize > maxSize) {
               minSize = maxSize;
  -            log("WARNING: pool min size set to "+minSize+" to stay <= max size");
  +            log.warn("WARNING: pool min size set to "+minSize+" to stay <= max 
size");
           }
       }
   
  @@ -493,7 +498,7 @@
               throw new IllegalStateException("Cannot initialize more than once!");
           deadObjects = new HashSet();
           objects = new HashMap();
  -        factory.poolStarted(this, logWriter);
  +        factory.poolStarted(this, null);//logWriter);
           lastGC = System.currentTimeMillis();
           int max = maxSize <= 0 ? minSize : Math.min(minSize, maxSize);
           for(int i=0; i<max; i++)
  @@ -564,10 +569,15 @@
                           rec.setInUse(true);
                           Object ob = rec.getObject();
                           result = factory.prepareObject(ob);
  -                        if(result != ob) rec.setClientObject(result);
  -                        if(result instanceof PooledObject)
  +                        if(result != ob) {
  +                            rec.setClientObject(result);
  +                        }
  +                        if(result instanceof PooledObject) {
                               ((PooledObject)result).addPoolEventListener(this);
  -                        log("Pool "+this+" gave out pooled object: "+result);
  +                        }
  +                        if (log.isTraceEnabled()) {
  +                            log.trace("Pool "+this+" gave out pooled object: 
"+result);
  +                        }
                           return result;
                       } catch(ConcurrentModificationException e) {
                           // That's OK, just go on and try another object
  @@ -589,7 +599,9 @@
                   return result;
   
               if(shouldBlock) {
  -                log("Pool "+this+" waiting for a free object");
  +                if (log.isTraceEnabled()) {
  +                    log.trace("Pool "+this+" waiting for a free object");
  +                }
                   synchronized(this) {
                       try {
                           if (blockingTimeout > 0) {
  @@ -604,8 +616,9 @@
                   break;
               }
           }
  -
  -        log("Pool "+this+" couldn't find an object to return!");
  +        if (log.isTraceEnabled()) {
  +            log.trace("Pool "+this+" couldn't find an object to return!");
  +        }
           return result;
       }
   
  @@ -687,7 +700,7 @@
                   try {
                       factory.deleteObject(pooled);
                   } catch(Exception e) {
  -                    log("Pool "+this+" factory ("+factory.getClass().getName()+" 
delete error: "+e);
  +                    log.error("Pool "+this+" factory 
("+factory.getClass().getName()+" delete error: "+e);
                   }
                   rec.close();
                   deadObjects.remove(object);
  @@ -699,10 +712,14 @@
                   removed = false;
               }
           }
  -        if(removed)
  -            log("Pool "+this+" destroyed object "+object+".");
  -        else
  -            log("Pool "+this+" returned object "+object+" to the pool.");
  +        if (log.isTraceEnabled()) {
  +            if(removed) {
  +                log.trace("Pool "+this+" destroyed object "+object+".");
  +            }
  +            else {
  +                log.trace("Pool "+this+" returned object "+object+" to the pool.");
  +            }
  +        }
           if(blocking) {
               synchronized(this) {
                   notify();
  @@ -802,7 +819,7 @@
                       try {
                           factory.deleteObject(pooled);
                       } catch(Exception e) {
  -                        log("Pool "+this+" factory 
("+factory.getClass().getName()+" delete error: "+e);
  +                        log.error("Pool "+this+" factory 
("+factory.getClass().getName()+" delete error: "+e);
                       }
                       rec.close();
                       ++count;
  @@ -835,7 +852,7 @@
        */
       private Object createNewObject(Object parameters, boolean forImmediateUse) {
           Object ob = null;
  -        String message = null;
  +        boolean traceEnabled = log.isTraceEnabled();
           // Serialize creating new objects
           synchronized(resizeLock) {  // Don't let 2 threads add at the same time
               if(maxSize == 0 || objects.size() < maxSize) {
  @@ -847,29 +864,42 @@
                       if(forImmediateUse) {
                           Object result = factory.prepareObject(ob);
                           if(result != ob) rec.setClientObject(result);
  -                        if(result instanceof PooledObject)
  +                        if(result instanceof PooledObject) {
                               ((PooledObject)result).addPoolEventListener(this);
  -                        message = "Pool "+this+" gave out new object: "+result;
  +                        }
  +                        if (traceEnabled) {
  +                            log.trace("Pool "+poolName+" gave out new object: 
"+result);
  +                        }
                           ob = result;
  -                    } else message = "Pool "+poolName+" created a new object: "+ob;
  +                    } 
  +                    else {
  +                        if (traceEnabled) {
  +                            log.trace("Pool "+poolName+" created a new object: 
"+ob);
  +                        }
  +                    }
                       objects = newMap;
  -                } else message = "Pool "+poolName+" factory "+factory+" unable to 
create new object!";
  -            } else message = "Pool "+poolName+" is full 
("+objects.size()+"/"+maxSize+")!";
  +                } 
  +                else {
  +                    if (traceEnabled) {
  +                        log.trace("Pool "+poolName+" factory "+factory+" unable to 
create new object!");
  +                    }
  +                }
  +            } 
  +            else {
  +                if (traceEnabled) {
  +                    log.trace("Pool "+poolName+" is full 
("+objects.size()+"/"+maxSize+")!");
  +                }
  +            }
           }
  -        if(message != null)
  -            log(message);
           return ob;
       }
   
  -    private void log(String message) {
  -        if(logWriter != null)
  -            logWriter.println(message);
  -    }
   }
   
   class BeanFactory extends PoolObjectFactory {
       private Class beanClass;
  -    private PrintWriter logger;
  +    //private PrintWriter logger;
  +    private JBossCategory log = 
(JBossCategory)JBossCategory.getInstance(BeanFactory.class);
   
       public BeanFactory(Class beanClass) {
           try {
  @@ -882,14 +912,14 @@
   
       public void poolStarted(ObjectPool pool, PrintWriter log) {
           super.poolStarted(pool, log);
  -        logger = log;
  +        //logger = log;
       }
   
       public Object createObject(Object parameters) {
           try {
               return beanClass.newInstance();
           } catch(Exception e) {
  -            logger.println("Unable to create instance of "+beanClass.getName()+": 
"+e);
  +            log.error("Unable to create instance of "+beanClass.getName()+": "+e);
           }
           return null;
       }
  
  
  

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

Reply via email to