Class IdleConnectionEvictor


  • @Contract(threading=SAFE_CONDITIONAL)
    public final class IdleConnectionEvictor
    extends java.lang.Object
    This class maintains a background thread to enforce an eviction policy for expired / idle persistent connections kept alive in the connection pool.
    Since:
    4.4
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.Thread thread  
      private java.util.concurrent.ThreadFactory threadFactory  
    • Constructor Summary

      Constructors 
      Constructor Description
      IdleConnectionEvictor​(org.apache.hc.core5.pool.ConnPoolControl<?> connectionManager, java.util.concurrent.ThreadFactory threadFactory, org.apache.hc.core5.util.TimeValue sleepTime, org.apache.hc.core5.util.TimeValue maxIdleTime)  
      IdleConnectionEvictor​(org.apache.hc.core5.pool.ConnPoolControl<?> connectionManager, org.apache.hc.core5.util.TimeValue maxIdleTime)  
      IdleConnectionEvictor​(org.apache.hc.core5.pool.ConnPoolControl<?> connectionManager, org.apache.hc.core5.util.TimeValue sleepTime, org.apache.hc.core5.util.TimeValue maxIdleTime)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void awaitTermination​(org.apache.hc.core5.util.Timeout timeout)  
      boolean isRunning()  
      void shutdown()  
      void start()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • threadFactory

        private final java.util.concurrent.ThreadFactory threadFactory
      • thread

        private final java.lang.Thread thread
    • Constructor Detail

      • IdleConnectionEvictor

        public IdleConnectionEvictor​(org.apache.hc.core5.pool.ConnPoolControl<?> connectionManager,
                                     java.util.concurrent.ThreadFactory threadFactory,
                                     org.apache.hc.core5.util.TimeValue sleepTime,
                                     org.apache.hc.core5.util.TimeValue maxIdleTime)
      • IdleConnectionEvictor

        public IdleConnectionEvictor​(org.apache.hc.core5.pool.ConnPoolControl<?> connectionManager,
                                     org.apache.hc.core5.util.TimeValue sleepTime,
                                     org.apache.hc.core5.util.TimeValue maxIdleTime)
      • IdleConnectionEvictor

        public IdleConnectionEvictor​(org.apache.hc.core5.pool.ConnPoolControl<?> connectionManager,
                                     org.apache.hc.core5.util.TimeValue maxIdleTime)
    • Method Detail

      • start

        public void start()
      • shutdown

        public void shutdown()
      • isRunning

        public boolean isRunning()
      • awaitTermination

        public void awaitTermination​(org.apache.hc.core5.util.Timeout timeout)
                              throws java.lang.InterruptedException
        Throws:
        java.lang.InterruptedException