java.lang.Object
java.lang.Thread
edu.internet2.middleware.grouperClientExt.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:
  • Constructor Details

    • IdleConnectionTimeoutThread

      public IdleConnectionTimeoutThread()
  • Method Details

    • 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:
    • 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