@@ -19,17 +19,16 @@ import java.net.http.HttpRequest
1919import java.net.http.HttpResponse
2020import java.util.concurrent.CompletableFuture
2121import kotlin.time.Duration
22- import kotlin.time.Duration.Companion.minutes
23- import kotlin.time.Duration.Companion.seconds
2422import kotlin.time.toJavaDuration
2523
2624class ProxyCheckApiImpl (
2725 val apiKey : String? ,
28- val apiEndpoint : URI = URI .create("https://proxycheck.io/v3/"),
29- val connectTimeout : Duration = 10 .seconds,
30- val readTimeout : Duration = 10 .seconds,
31- val shutdownTimeout : Duration = 1 .minutes,
32- val proxySelector : ProxySelector = ProxySelector .getDefault(),
26+ val apiEndpoint : URI ,
27+ val connectTimeout : Duration ,
28+ val readTimeout : Duration ,
29+ val shutdownTimeout : Duration ,
30+ val proxySelector : ProxySelector ,
31+ val apiVersion : String ,
3332) : ProxyCheckApi {
3433 private val httpClient = HttpClient .newBuilder().apply {
3534 connectTimeout(connectTimeout.toJavaDuration())
@@ -54,7 +53,7 @@ class ProxyCheckApiImpl(
5453 val requestConfiguration = RequestConfiguration ()
5554 requestConfiguration.configure()
5655
57- val rawRequestConfiguration = requestConfiguration.toRaw(this .apiKey)
56+ val rawRequestConfiguration = requestConfiguration.toRaw(key = this .apiKey, ver = this .apiVersion )
5857 val queryString = rawRequestConfiguration.toHttpQueryString().ifEmpty { null }
5958
6059 val uri = if (queryString == null ) this .apiEndpoint else this .apiEndpoint.resolve(" ?$queryString " )
@@ -141,6 +140,7 @@ class ProxyCheckApiImpl(
141140 readTimeout = configuration.timeout.readTimeout,
142141 shutdownTimeout = configuration.timeout.shutdownTimeout,
143142 proxySelector = configuration.connection.proxySelector,
143+ apiVersion = configuration.unsupported.apiVersion,
144144 )
145145 }
146146
0 commit comments