Skip to content

Commit ef26aff

Browse files
authored
fix: add connect timeout config (#411)
1 parent 22cf317 commit ef26aff

17 files changed

+42
-4
lines changed

client/src/commonMain/kotlin/com/algolia/search/configuration/Configuration.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,11 @@ public interface Configuration : Closeable {
2323
*/
2424
public val readTimeout: Long
2525

26+
/**
27+
* The timeout when connecting to the server.
28+
*/
29+
public val connectTimeout: Long
30+
2631
/**
2732
* [LogLevel] to display in the console.
2833
*/

client/src/commonMain/kotlin/com/algolia/search/configuration/ConfigurationAnalytics.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
package com.algolia.search.configuration
44

55
import com.algolia.search.client.ClientAnalytics
6+
import com.algolia.search.configuration.internal.*
67
import com.algolia.search.configuration.internal.ConfigurationAnalyticsImpl
8+
import com.algolia.search.configuration.internal.DEFAULT_CONNECT_TIMEOUT
79
import com.algolia.search.configuration.internal.DEFAULT_LOG_LEVEL
810
import com.algolia.search.configuration.internal.DEFAULT_READ_TIMEOUT
911
import com.algolia.search.configuration.internal.DEFAULT_WRITE_TIMEOUT
@@ -52,6 +54,7 @@ public fun ConfigurationAnalytics(
5254
engine: HttpClientEngine? = null,
5355
httpClientConfig: (HttpClientConfig<*>.() -> Unit)? = null,
5456
logger: Logger = Logger.Simple,
57+
connectTimeout: Long = DEFAULT_CONNECT_TIMEOUT,
5558
): ConfigurationAnalytics = ConfigurationAnalyticsImpl(
5659
applicationID = applicationID,
5760
apiKey = apiKey,
@@ -64,4 +67,5 @@ public fun ConfigurationAnalytics(
6467
engine = engine,
6568
httpClientConfig = httpClientConfig,
6669
logger = logger,
70+
connectTimeout = connectTimeout,
6771
)

client/src/commonMain/kotlin/com/algolia/search/configuration/ConfigurationInsights.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
package com.algolia.search.configuration
44

55
import com.algolia.search.client.ClientInsights
6+
import com.algolia.search.configuration.internal.*
67
import com.algolia.search.configuration.internal.ConfigurationInsightsImpl
8+
import com.algolia.search.configuration.internal.DEFAULT_CONNECT_TIMEOUT
79
import com.algolia.search.configuration.internal.DEFAULT_LOG_LEVEL
810
import com.algolia.search.configuration.internal.DEFAULT_READ_TIMEOUT
911
import com.algolia.search.configuration.internal.DEFAULT_WRITE_TIMEOUT
@@ -44,6 +46,7 @@ public fun ConfigurationInsights(
4446
engine: HttpClientEngine? = null,
4547
httpClientConfig: (HttpClientConfig<*>.() -> Unit)? = null,
4648
logger: Logger = Logger.Simple,
49+
connectTimeout: Long = DEFAULT_CONNECT_TIMEOUT,
4750
): ConfigurationInsights = ConfigurationInsightsImpl(
4851
applicationID = applicationID,
4952
apiKey = apiKey,
@@ -55,4 +58,5 @@ public fun ConfigurationInsights(
5558
engine = engine,
5659
httpClientConfig = httpClientConfig,
5760
logger = logger,
61+
connectTimeout = connectTimeout,
5862
)

client/src/commonMain/kotlin/com/algolia/search/configuration/ConfigurationPersonalization.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
package com.algolia.search.configuration
44

55
import com.algolia.search.client.ClientPersonalization
6+
import com.algolia.search.configuration.internal.*
67
import com.algolia.search.configuration.internal.ConfigurationPersonalizationImpl
8+
import com.algolia.search.configuration.internal.DEFAULT_CONNECT_TIMEOUT
79
import com.algolia.search.configuration.internal.DEFAULT_LOG_LEVEL
810
import com.algolia.search.configuration.internal.DEFAULT_READ_TIMEOUT
911
import com.algolia.search.configuration.internal.DEFAULT_WRITE_TIMEOUT
@@ -52,6 +54,7 @@ public fun ConfigurationPersonalization(
5254
engine: HttpClientEngine? = null,
5355
httpClientConfig: (HttpClientConfig<*>.() -> Unit)? = null,
5456
logger: Logger = Logger.Simple,
57+
connectTimeout: Long = DEFAULT_CONNECT_TIMEOUT,
5558
): ConfigurationPersonalization = ConfigurationPersonalizationImpl(
5659
applicationID = applicationID,
5760
apiKey = apiKey,
@@ -64,4 +67,5 @@ public fun ConfigurationPersonalization(
6467
engine = engine,
6568
httpClientConfig = httpClientConfig,
6669
logger = logger,
70+
connectTimeout = connectTimeout,
6771
)

client/src/commonMain/kotlin/com/algolia/search/configuration/ConfigurationPlaces.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
package com.algolia.search.configuration
44

55
import com.algolia.search.client.ClientPlaces
6+
import com.algolia.search.configuration.internal.*
67
import com.algolia.search.configuration.internal.ConfigurationPlacesImpl
8+
import com.algolia.search.configuration.internal.DEFAULT_CONNECT_TIMEOUT
79
import com.algolia.search.configuration.internal.DEFAULT_LOG_LEVEL
810
import com.algolia.search.configuration.internal.DEFAULT_READ_TIMEOUT
911
import com.algolia.search.configuration.internal.DEFAULT_WRITE_TIMEOUT
@@ -28,6 +30,7 @@ public fun ConfigurationPlaces(
2830
engine: HttpClientEngine? = null,
2931
httpClientConfig: (HttpClientConfig<*>.() -> Unit)? = null,
3032
logger: Logger = Logger.Simple,
33+
connectTimeout: Long = DEFAULT_CONNECT_TIMEOUT,
3134
): ConfigurationPlaces = ConfigurationPlacesImpl(
3235
writeTimeout = writeTimeout,
3336
readTimeout = readTimeout,
@@ -37,4 +40,5 @@ public fun ConfigurationPlaces(
3740
engine = engine,
3841
httpClientConfig = httpClientConfig,
3942
logger = logger,
43+
connectTimeout = connectTimeout,
4044
)

client/src/commonMain/kotlin/com/algolia/search/configuration/ConfigurationRecommend.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.algolia.search.configuration
22

3+
import com.algolia.search.configuration.internal.*
34
import com.algolia.search.configuration.internal.ConfigurationRecommendImpl
5+
import com.algolia.search.configuration.internal.DEFAULT_CONNECT_TIMEOUT
46
import com.algolia.search.configuration.internal.DEFAULT_LOG_LEVEL
57
import com.algolia.search.configuration.internal.DEFAULT_READ_TIMEOUT
68
import com.algolia.search.configuration.internal.DEFAULT_WRITE_TIMEOUT
@@ -43,6 +45,7 @@ public fun ConfigurationRecommend(
4345
httpClientConfig: (HttpClientConfig<*>.() -> Unit)? = null,
4446
compression: Compression = Compression.None,
4547
logger: Logger = Logger.Simple,
48+
connectTimeout: Long = DEFAULT_CONNECT_TIMEOUT,
4649
): ConfigurationRecommend = ConfigurationRecommendImpl(
4750
applicationID = applicationID,
4851
apiKey = apiKey,
@@ -55,4 +58,5 @@ public fun ConfigurationRecommend(
5558
httpClientConfig = httpClientConfig,
5659
compression = compression,
5760
logger = logger,
61+
connectTimeout = connectTimeout,
5862
)

client/src/commonMain/kotlin/com/algolia/search/configuration/ConfigurationSearch.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
package com.algolia.search.configuration
44

55
import com.algolia.search.client.ClientSearch
6+
import com.algolia.search.configuration.internal.*
67
import com.algolia.search.configuration.internal.ConfigurationSearchImpl
78
import com.algolia.search.configuration.internal.DEFAULT_LOG_LEVEL
89
import com.algolia.search.configuration.internal.DEFAULT_READ_TIMEOUT
@@ -46,6 +47,8 @@ public fun ConfigurationSearch(
4647
httpClientConfig: (HttpClientConfig<*>.() -> Unit)? = null,
4748
compression: Compression = Compression.None,
4849
logger: Logger = Logger.Simple,
50+
connectTimeout: Long = DEFAULT_CONNECT_TIMEOUT,
51+
4952
): ConfigurationSearch = ConfigurationSearchImpl(
5053
applicationID = applicationID,
5154
apiKey = apiKey,
@@ -57,5 +60,6 @@ public fun ConfigurationSearch(
5760
engine = engine,
5861
httpClientConfig = httpClientConfig,
5962
compression = compression,
60-
logger = logger
63+
logger = logger,
64+
connectTimeout = connectTimeout,
6165
)

client/src/commonMain/kotlin/com/algolia/search/configuration/internal/ConfigurationAnalyticsImpl.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ internal class ConfigurationAnalyticsImpl(
2828
override val engine: HttpClientEngine?,
2929
override val httpClientConfig: (HttpClientConfig<*>.() -> Unit)?,
3030
override val logger: Logger,
31+
override val connectTimeout: Long,
3132
) : ConfigurationAnalytics {
3233

3334
override val compression: Compression = Compression.None

client/src/commonMain/kotlin/com/algolia/search/configuration/internal/ConfigurationInsightsImpl.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ internal data class ConfigurationInsightsImpl(
2626
override val engine: HttpClientEngine?,
2727
override val httpClientConfig: (HttpClientConfig<*>.() -> Unit)?,
2828
override val logger: Logger,
29+
override val connectTimeout: Long,
2930
) : ConfigurationInsights {
3031

3132
override val compression: Compression = Compression.None

client/src/commonMain/kotlin/com/algolia/search/configuration/internal/ConfigurationPersonalizationImpl.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ internal class ConfigurationPersonalizationImpl(
2828
override val engine: HttpClientEngine?,
2929
override val httpClientConfig: (HttpClientConfig<*>.() -> Unit)?,
3030
override val logger: Logger,
31+
override val connectTimeout: Long,
3132
) : ConfigurationPersonalization {
3233

3334
override val compression: Compression = Compression.None

0 commit comments

Comments
 (0)