diff -r f5a5d9237d69 -r e8d6255306f8 src/org/sipdroid/net/tools/ObjectPool.java --- a/src/org/sipdroid/net/tools/ObjectPool.java Sat Jan 23 21:48:58 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,37 +0,0 @@ -package org.sipdroid.net.tools; - -import java.util.ArrayList; - -public abstract class ObjectPool { - private ArrayList locked, unlocked; - - ObjectPool(int size){ - locked = new ArrayList(size); - unlocked = new ArrayList(size); - } - - public int getPoolSize() { - return locked.size() + unlocked.size(); - } - - abstract Object create(); - abstract boolean validate( Object o ); - synchronized Object checkOut(){ - if(unlocked.size() > 0){ - Object cur = unlocked.get(0); - unlocked.remove(cur); - locked.add(cur); - return(cur); - } - // no objects available, create a new one - Object o = create(); - locked.add(o); - return(o); - } - - synchronized void checkIn( Object o ) { - locked.remove( o ); - unlocked.add(o); - } - -}