Package ai.platon.pulsar.common.proxy
Class ProxyPoolManager
-
- All Implemented Interfaces:
-
java.lang.AutoCloseable
public class ProxyPoolManager implements AutoCloseable
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public classProxyPoolManager.Companion
-
Field Summary
Fields Modifier and Type Field Description private InstantlastActiveTimeprivate DurationidleTimeoutprivate final DurationidleTimeprivate final BooleanisIdleprivate final AtomicIntegernumRunningTasksprivate StringstatusStringprivate Booleanverboseprivate final ConcurrentSkipListMap<Path, ProxyEntry>activeProxyEntriesprivate final ConcurrentSkipListSet<ProxyEntry>workingProxyEntriesprivate final BooleanisEnabledprivate final BooleanisDisabledprivate final BooleanisActiveprivate final ProxyPoolproxyPoolpublic final static ProxyPoolManager.CompanionCompanion
-
Constructor Summary
Constructors Constructor Description ProxyPoolManager(ProxyPool proxyPool, ImmutableConfig conf)
-
Method Summary
Modifier and Type Method Description final InstantgetLastActiveTime()final UnitsetLastActiveTime(Instant lastActiveTime)final DurationgetIdleTimeout()final UnitsetIdleTimeout(Duration idleTimeout)final DurationgetIdleTime()BooleanisIdle()final AtomicIntegergetNumRunningTasks()final StringgetStatusString()final UnitsetStatusString(String statusString)final BooleangetVerbose()final UnitsetVerbose(Boolean verbose)final ConcurrentSkipListMap<Path, ProxyEntry>getActiveProxyEntries()final ConcurrentSkipListSet<ProxyEntry>getWorkingProxyEntries()final BooleanisEnabled()final BooleanisDisabled()final BooleanisActive()final ProxyPoolgetProxyPool()<R extends Any> RrunWith(ProxyEntry proxyEntry, SuspendFunction0<R> task)Run the task, if the proxy is disabled, call the innovation directly UnittakeOff(ProxyEntry excludedProxy, Boolean ban)Take off the proxy if it is active, and the monitor will choose the next proxy to connect StringtoString()Unitclose()-
-
Constructor Detail
-
ProxyPoolManager
ProxyPoolManager(ProxyPool proxyPool, ImmutableConfig conf)
-
-
Method Detail
-
getLastActiveTime
final Instant getLastActiveTime()
-
setLastActiveTime
final Unit setLastActiveTime(Instant lastActiveTime)
-
getIdleTimeout
final Duration getIdleTimeout()
-
setIdleTimeout
final Unit setIdleTimeout(Duration idleTimeout)
-
getIdleTime
final Duration getIdleTime()
-
getNumRunningTasks
final AtomicInteger getNumRunningTasks()
-
getStatusString
final String getStatusString()
-
setStatusString
final Unit setStatusString(String statusString)
-
getVerbose
final Boolean getVerbose()
-
setVerbose
final Unit setVerbose(Boolean verbose)
-
getActiveProxyEntries
final ConcurrentSkipListMap<Path, ProxyEntry> getActiveProxyEntries()
-
getWorkingProxyEntries
final ConcurrentSkipListSet<ProxyEntry> getWorkingProxyEntries()
-
isDisabled
final Boolean isDisabled()
-
getProxyPool
final ProxyPool getProxyPool()
-
runWith
<R extends Any> R runWith(ProxyEntry proxyEntry, SuspendFunction0<R> task)
Run the task, if the proxy is disabled, call the innovation directly
-
takeOff
Unit takeOff(ProxyEntry excludedProxy, Boolean ban)
Take off the proxy if it is active, and the monitor will choose the next proxy to connect
-
-
-
-