|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.archive.io.WriterPool
public abstract class WriterPool
Pool of Writers.
Abstract. Override and pass in the Constructor a factory that creates
WriterPoolMember implementations.
| Field Summary | |
|---|---|
static int |
DEFAULT_MAX_ACTIVE
Default maximum active number of files in the pool. |
static int |
DEFAULT_MAXIMUM_WAIT
Maximum time to wait on a free file.. |
(package private) java.util.logging.Logger |
logger
|
protected static int |
NO_MAX_IDLE
Don't enforce a maximum number of idle instances in pool. |
| Constructor Summary | |
|---|---|
WriterPool(java.util.concurrent.atomic.AtomicInteger serial,
org.apache.commons.pool.BasePoolableObjectFactory factory,
WriterPoolSettings settings,
int poolMaximumActive,
int poolMaximumWait)
Constructor |
|
| Method Summary | |
|---|---|
WriterPoolMember |
borrowFile()
Check out a WriterPoolMember. |
void |
close()
Close all WriterPoolMembers in pool. |
int |
getNumActive()
|
int |
getNumIdle()
|
protected java.lang.String |
getPoolState()
|
protected java.lang.String |
getPoolState(long startTime)
|
java.util.concurrent.atomic.AtomicInteger |
getSerialNo()
Returns the atomic integer used to generate serial numbers for files. |
WriterPoolSettings |
getSettings()
|
void |
invalidateFile(WriterPoolMember f)
|
void |
returnFile(WriterPoolMember writer)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
final java.util.logging.Logger logger
protected static final int NO_MAX_IDLE
public static final int DEFAULT_MAX_ACTIVE
public static final int DEFAULT_MAXIMUM_WAIT
| Constructor Detail |
|---|
public WriterPool(java.util.concurrent.atomic.AtomicInteger serial,
org.apache.commons.pool.BasePoolableObjectFactory factory,
WriterPoolSettings settings,
int poolMaximumActive,
int poolMaximumWait)
serial - Used to generate unique filename sequencesfactory - Factory that knows how to make a WriterPoolMember.settings - Settings for this pool.poolMaximumActive - poolMaximumWait - | Method Detail |
|---|
public WriterPoolMember borrowFile()
throws java.io.IOException
WriterPoolMember.
This method must be answered by a call to
returnFile(WriterPoolMember) else pool starts leaking.
java.io.IOException - Problem getting Writer from pool (Converted
from Exception to IOException so this pool can live as a good citizen
down in depths of ARCSocketFactory).
java.util.NoSuchElementException - If we time out waiting on a pool member.
public void returnFile(WriterPoolMember writer)
throws java.io.IOException
writer - Writer to return to the pool.
java.io.IOException - Problem returning File to pool.
public void invalidateFile(WriterPoolMember f)
throws java.io.IOException
java.io.IOException
public int getNumActive()
throws java.lang.UnsupportedOperationException
WriterPoolMembers checked out of pool.
java.lang.UnsupportedOperationException
public int getNumIdle()
throws java.lang.UnsupportedOperationException
WriterPoolMember instances still in the pool.
java.lang.UnsupportedOperationExceptionpublic void close()
WriterPoolMembers in pool.
public WriterPoolSettings getSettings()
protected java.lang.String getPoolState()
protected java.lang.String getPoolState(long startTime)
startTime - If we are passed a start time, we'll add difference
between it and now to end of string. Pass -1 if don't want this
added to end of state string.
public java.util.concurrent.atomic.AtomicInteger getSerialNo()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||