Skip to content

Commit a97ea23

Browse files
ljcanalesmp911de
authored andcommitted
Configure SimpleClientHttpRequestFactory with timeouts.
Closes gh-907 Original pull request: gh-908 Signed-off-by: Luciano Canales <[email protected]>
1 parent 504f93d commit a97ea23

File tree

1 file changed

+28
-1
lines changed

1 file changed

+28
-1
lines changed

spring-vault-core/src/main/java/org/springframework/vault/client/ClientHttpRequestFactoryFactory.java

+28-1
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@
8282
* @author Mark Paluch
8383
* @author Ryan Gow
8484
* @author Spencer Gibb
85+
* @author Luciano Canales
8586
* @since 2.2
8687
*/
8788
public class ClientHttpRequestFactoryFactory {
@@ -128,7 +129,7 @@ public static ClientHttpRequestFactory create(ClientOptions options, SslConfigur
128129
+ "must be applied outside the Vault Client to use the JDK HTTP client");
129130
}
130131

131-
return new SimpleClientHttpRequestFactory();
132+
return SimpleClient.usingSimpleClientHttpRequest(options);
132133
}
133134

134135
static SSLContext getSSLContext(SslConfiguration sslConfiguration) throws GeneralSecurityException, IOException {
@@ -417,6 +418,32 @@ public static Builder getBuilder(ClientOptions options, SslConfiguration sslConf
417418

418419
}
419420

421+
/**
422+
* Utilities to create a {@link ClientHttpRequestFactory} for the
423+
* {@link SimpleClientHttpRequestFactory}.
424+
*
425+
* @author Luciano Canales
426+
*/
427+
public static class SimpleClient {
428+
429+
/**
430+
* Create a {@link ClientHttpRequestFactory} using
431+
* {@link SimpleClientHttpRequestFactory}.
432+
* @param options must not be {@literal null}
433+
* @return a new and configured {@link SimpleClientHttpRequestFactory} instance.
434+
*/
435+
public static SimpleClientHttpRequestFactory usingSimpleClientHttpRequest(ClientOptions options) {
436+
437+
SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
438+
439+
factory.setConnectTimeout((int) options.getConnectionTimeout().toMillis());
440+
factory.setReadTimeout((int) options.getReadTimeout().toMillis());
441+
442+
return factory;
443+
}
444+
445+
}
446+
420447
static class KeySelectingKeyManagerFactory extends KeyManagerFactory {
421448

422449
KeySelectingKeyManagerFactory(KeyManagerFactory factory, KeyConfiguration keyConfiguration) {

0 commit comments

Comments
 (0)