@Override public String toString() { return toStringHelper(this) .add("pendingConnections", pendingConnectionCount()) .add("busyConnections", busyConnections) .add("maxConnections", connectionPoolSettings.maxConnectionsPerHost()) .toString(); } }
@Override public Observable<Connection> borrowConnection() { if (busyConnections.incrementAndGet() <= connectionPoolSettings.maxConnectionsPerHost()) { return doBorrowConnection(); } busyConnections.decrementAndGet(); TimeoutObservableFactory timeoutObservableFactory = new TimeoutObservableFactory(origin, waitingSubscribers); return timeoutObservableFactory.create(stats, connectionPoolSettings); }
/** * Constructs an instance with inherited settings. * * @param settings settings to inherit from */ public Builder(ConnectionPool.Settings settings) { this.maxConnectionsPerHost = settings.maxConnectionsPerHost(); this.maxPendingConnectionsPerHost = settings.maxPendingConnectionsPerHost(); this.connectTimeoutMillis = settings.connectTimeoutMillis(); this.socketTimeoutMillis = settings.socketTimeoutMillis(); this.pendingConnectionTimeoutMillis = settings.pendingConnectionTimeoutMillis(); this.connectionExpirationSeconds = settings.connectionExpirationSeconds(); }