Package one.nio.pool
Class Pool<T>
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<E>
-
- java.util.AbstractSequentialList<E>
-
- java.util.LinkedList<T>
-
- one.nio.pool.Pool<T>
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Serializable,java.lang.AutoCloseable,java.lang.Cloneable,java.lang.Iterable<T>,java.util.Collection<T>,java.util.Deque<T>,java.util.List<T>,java.util.Queue<T>
- Direct Known Subclasses:
SocketPool
public abstract class Pool<T> extends java.util.LinkedList<T> implements java.io.Closeable- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanclosedprotected intcreatedCountprotected booleanfifoprotected intinitialCountprotected booleankeepEmptyprotected intmaxCountprotected inttimeoutprotected inttimeoutsprotected intwaitingThreads
-
Constructor Summary
Constructors Modifier Constructor Description protectedPool(int initialCount, int maxCount, int timeout)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description TborrowObject()voidclose()abstract TcreateObject()private voiddecreaseCount()voiddestroyObject(T object)protected voidinitialize()voidinvalidateAll()voidinvalidateObject(T object)booleanisClosed()java.lang.Stringname()voidreturnObject(T object)-
Methods inherited from class java.util.LinkedList
add, add, addAll, addAll, addFirst, addLast, clear, clone, contains, descendingIterator, element, get, getFirst, getLast, indexOf, lastIndexOf, listIterator, offer, offerFirst, offerLast, peek, peekFirst, peekLast, poll, pollFirst, pollLast, pop, push, remove, remove, remove, removeFirst, removeFirstOccurrence, removeLast, removeLastOccurrence, set, size, spliterator, toArray, toArray
-
Methods inherited from class java.util.AbstractList
equals, hashCode, listIterator, removeRange, subList
-
Methods inherited from class java.util.AbstractCollection
containsAll, isEmpty, removeAll, retainAll, toString
-
-
-
-
Field Detail
-
closed
protected boolean closed
-
keepEmpty
protected boolean keepEmpty
-
fifo
protected boolean fifo
-
initialCount
protected int initialCount
-
createdCount
protected int createdCount
-
maxCount
protected int maxCount
-
timeout
protected int timeout
-
timeouts
protected int timeouts
-
waitingThreads
protected int waitingThreads
-
-
Method Detail
-
close
public void close()
- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable
-
name
public java.lang.String name()
-
isClosed
public boolean isClosed()
-
createObject
public abstract T createObject() throws PoolException
- Throws:
PoolException
-
destroyObject
public void destroyObject(T object)
-
borrowObject
public final T borrowObject() throws PoolException, java.lang.InterruptedException
- Throws:
PoolExceptionjava.lang.InterruptedException
-
returnObject
public final void returnObject(T object)
-
invalidateObject
public final void invalidateObject(T object)
-
invalidateAll
public final void invalidateAll()
-
initialize
protected final void initialize()
-
decreaseCount
private void decreaseCount()
-
-