org.apache.commons.httpclient.util
Class IdleConnectionTimeoutThread

java.lang.Object
  extended by java.lang.Thread
      extended by org.apache.commons.httpclient.util.IdleConnectionTimeoutThread
All Implemented Interfaces:
Runnable

public class IdleConnectionTimeoutThread
extends Thread

A utility class for periodically closing idle connections.

Since:
3.0
See Also:
HttpConnectionManager.closeIdleConnections(long)

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
Thread.State, Thread.UncaughtExceptionHandler
 
Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
IdleConnectionTimeoutThread()
           
 
Method Summary
 void addConnectionManager(HttpConnectionManager connectionManager)
          Adds a connection manager to be handled by this class.
protected  void handleCloseIdleConnections(HttpConnectionManager connectionManager)
          Handles calling closeIdleConnections() and doing any other cleanup work on the given connection mangaer.
 void removeConnectionManager(HttpConnectionManager connectionManager)
          Removes the connection manager from this class.
 void run()
          Closes idle connections.
 void setConnectionTimeout(long connectionTimeout)
          Sets the timeout value to use when testing for idle connections.
 void setTimeoutInterval(long timeoutInterval)
          Sets the interval used by this class between closing idle connections.
 void shutdown()
          Stops the thread used to close idle connections.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IdleConnectionTimeoutThread

public IdleConnectionTimeoutThread()
Method Detail

addConnectionManager

public void addConnectionManager(HttpConnectionManager connectionManager)
Adds a connection manager to be handled by this class. HttpConnectionManager.closeIdleConnections(long) will be called on the connection manager every timeoutInterval milliseconds.

Parameters:
connectionManager - The connection manager to add

removeConnectionManager

public void removeConnectionManager(HttpConnectionManager connectionManager)
Removes the connection manager from this class. The idle connections from the connection manager will no longer be automatically closed by this class.

Parameters:
connectionManager - The connection manager to remove

handleCloseIdleConnections

protected void handleCloseIdleConnections(HttpConnectionManager connectionManager)
Handles calling closeIdleConnections() and doing any other cleanup work on the given connection mangaer.

Parameters:
connectionManager - The connection manager to close idle connections for

run

public void run()
Closes idle connections.

Specified by:
run in interface Runnable
Overrides:
run in class Thread

shutdown

public void shutdown()
Stops the thread used to close idle connections. This class cannot be used once shutdown.


setConnectionTimeout

public void setConnectionTimeout(long connectionTimeout)
Sets the timeout value to use when testing for idle connections.

Parameters:
connectionTimeout - The connection timeout in milliseconds
See Also:
HttpConnectionManager.closeIdleConnections(long)

setTimeoutInterval

public void setTimeoutInterval(long timeoutInterval)
Sets the interval used by this class between closing idle connections. Idle connections will be closed every timeoutInterval milliseconds.

Parameters:
timeoutInterval - The timeout interval in milliseconds


Copyright © 2001-2008 Apache Software Foundation. All Rights Reserved.