Skip to content

Commit

Permalink
rename connection pool configuration (#288)
Browse files Browse the repository at this point in the history
  • Loading branch information
artemredkin authored Jul 31, 2020
1 parent f69b68f commit c9a9bf0
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 13 deletions.
4 changes: 2 additions & 2 deletions Sources/AsyncHTTPClient/ConnectionPool.swift
Original file line number Diff line number Diff line change
Expand Up @@ -353,7 +353,7 @@ class HTTP1ConnectionProvider {
case .park(let connection):
logger.trace("parking connection",
metadata: ["ahc-connection": "\(connection)"])
connection.setIdleTimeout(timeout: self.configuration.poolConfiguration.idleTimeout,
connection.setIdleTimeout(timeout: self.configuration.connectionPool.idleTimeout,
logger: self.backgroundActivityLogger)
case .closeProvider:
logger.debug("closing provider",
Expand All @@ -365,7 +365,7 @@ class HTTP1ConnectionProvider {
logger.trace("parking connection & doing further action",
metadata: ["ahc-connection": "\(connection)",
"ahc-action": "\(action)"])
connection.setIdleTimeout(timeout: self.configuration.poolConfiguration.idleTimeout,
connection.setIdleTimeout(timeout: self.configuration.connectionPool.idleTimeout,
logger: self.backgroundActivityLogger)
self.execute(action, logger: logger)
case .closeAnd(let connection, let action):
Expand Down
16 changes: 8 additions & 8 deletions Sources/AsyncHTTPClient/HTTPClient.swift
Original file line number Diff line number Diff line change
Expand Up @@ -642,7 +642,7 @@ public class HTTPClient {
/// Default client timeout, defaults to no timeouts.
public var timeout: Timeout
/// Connection pool configuration.
public var poolConfiguration: PoolConfiguration
public var connectionPool: ConnectionPool
/// Upstream proxy, defaults to no proxy.
public var proxy: Proxy?
/// Enables automatic body decompression. Supported algorithms are gzip and deflate.
Expand All @@ -653,14 +653,14 @@ public class HTTPClient {
public init(tlsConfiguration: TLSConfiguration? = nil,
redirectConfiguration: RedirectConfiguration? = nil,
timeout: Timeout = Timeout(),
poolConfiguration: PoolConfiguration = PoolConfiguration(),
connectionPool: ConnectionPool = ConnectionPool(),
proxy: Proxy? = nil,
ignoreUncleanSSLShutdown: Bool = false,
decompression: Decompression = .disabled) {
self.tlsConfiguration = tlsConfiguration
self.redirectConfiguration = redirectConfiguration ?? RedirectConfiguration()
self.timeout = timeout
self.poolConfiguration = poolConfiguration
self.connectionPool = connectionPool
self.proxy = proxy
self.ignoreUncleanSSLShutdown = ignoreUncleanSSLShutdown
self.decompression = decompression
Expand All @@ -676,7 +676,7 @@ public class HTTPClient {
tlsConfiguration: tlsConfiguration,
redirectConfiguration: redirectConfiguration,
timeout: timeout,
poolConfiguration: PoolConfiguration(),
connectionPool: ConnectionPool(),
proxy: proxy,
ignoreUncleanSSLShutdown: ignoreUncleanSSLShutdown,
decompression: decompression
Expand All @@ -693,7 +693,7 @@ public class HTTPClient {
self.init(tlsConfiguration: TLSConfiguration.forClient(certificateVerification: certificateVerification),
redirectConfiguration: redirectConfiguration,
timeout: timeout,
poolConfiguration: PoolConfiguration(),
connectionPool: ConnectionPool(),
proxy: proxy,
ignoreUncleanSSLShutdown: ignoreUncleanSSLShutdown,
decompression: decompression)
Expand All @@ -702,15 +702,15 @@ public class HTTPClient {
public init(certificateVerification: CertificateVerification,
redirectConfiguration: RedirectConfiguration? = nil,
timeout: Timeout = Timeout(),
poolConfiguration: TimeAmount = .seconds(60),
connectionPool: TimeAmount = .seconds(60),
proxy: Proxy? = nil,
ignoreUncleanSSLShutdown: Bool = false,
decompression: Decompression = .disabled,
backgroundActivityLogger: Logger?) {
self.init(tlsConfiguration: TLSConfiguration.forClient(certificateVerification: certificateVerification),
redirectConfiguration: redirectConfiguration,
timeout: timeout,
poolConfiguration: PoolConfiguration(),
connectionPool: ConnectionPool(),
proxy: proxy,
ignoreUncleanSSLShutdown: ignoreUncleanSSLShutdown,
decompression: decompression)
Expand Down Expand Up @@ -862,7 +862,7 @@ extension HTTPClient.Configuration {
}

/// Connection pool configuration.
public struct PoolConfiguration: Hashable {
public struct ConnectionPool: Hashable {
// Specifies amount of time connections are kept idle in the pool.
public var idleTimeout: TimeAmount

Expand Down
4 changes: 2 additions & 2 deletions Tests/AsyncHTTPClientTests/HTTPClientTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -1742,7 +1742,7 @@ class HTTPClientTests: XCTestCase {

func testPoolClosesIdleConnections() {
let localClient = HTTPClient(eventLoopGroupProvider: .shared(self.clientGroup),
configuration: .init(poolConfiguration: .init(idleTimeout: .milliseconds(100))))
configuration: .init(connectionPool: .init(idleTimeout: .milliseconds(100))))
defer {
XCTAssertNoThrow(try localClient.syncShutdown())
}
Expand All @@ -1753,7 +1753,7 @@ class HTTPClientTests: XCTestCase {

func testRacePoolIdleConnectionsAndGet() {
let localClient = HTTPClient(eventLoopGroupProvider: .shared(self.clientGroup),
configuration: .init(poolConfiguration: .init(idleTimeout: .milliseconds(10))))
configuration: .init(connectionPool: .init(idleTimeout: .milliseconds(10))))
defer {
XCTAssertNoThrow(try localClient.syncShutdown())
}
Expand Down
3 changes: 2 additions & 1 deletion docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ RUN apt-get update && apt-get install -y lsof dnsutils netcat-openbsd net-tools

# ruby and jazzy for docs generation
RUN apt-get update && apt-get install -y ruby ruby-dev libsqlite3-dev
RUN gem install jazzy --no-ri --no-rdoc
# jazzy no longer works on xenial as ruby is too old.
RUN if [ "${ubuntu_version}" != "xenial" ] ; then gem install jazzy --no-ri --no-rdoc ; fi

# tools
RUN mkdir -p $HOME/.tools
Expand Down

0 comments on commit c9a9bf0

Please sign in to comment.