1 package org.apache.ojb.broker.core; 2 3 17 18 import org.apache.commons.pool.KeyedObjectPool; 19 import org.apache.ojb.broker.PersistenceBrokerInternal; 20 import org.apache.ojb.broker.util.logging.LoggerFactory; 21 22 public class PoolablePersistenceBroker extends DelegatingPersistenceBroker 23 { 24 private KeyedObjectPool pool; 25 26 public PoolablePersistenceBroker(PersistenceBrokerInternal broker, KeyedObjectPool pool) 27 { 28 super(broker); 29 this.pool = pool; 30 } 31 32 public boolean close() 33 { 34 super.close(); 35 try 36 { 37 pool.returnObject(this.getPBKey(), this); 38 return true; 39 } 40 catch (Exception e) 41 { 42 LoggerFactory.getDefaultLogger().error("Unexpected exception when returning instance to pool", e); 43 return false; 44 } 45 } 46 47 public void destroy() 48 { 49 this.setDelegate(null); 50 } 51 } 52 | Popular Tags |