@@ -94,15 +94,22 @@ public void refresh() {
94
94
95
95
private HikariConfig extractHikariPoolConfig (Config config , DbConnectionProperties properties ) {
96
96
HikariConfig hikariPoolConfig = createDefaultHikariPoolConfig (properties );
97
- hikariPoolConfig .setPoolName ("application-name" );
98
- hikariPoolConfig .setRegisterMbeans (true );
99
- hikariPoolConfig .setConnectionTimeout (5000L );
100
- hikariPoolConfig .setIdleTimeout (10 * 60 * 60 * 1000 );
101
- hikariPoolConfig .setMaxLifetime (10 * 60 * 1000 );
102
- hikariPoolConfig .setMinimumIdle (10 );
103
- hikariPoolConfig .setMaximumPoolSize (10 );
104
- hikariPoolConfig .setValidationTimeout (5000L );
105
- hikariPoolConfig .setLeakDetectionThreshold (15 * 60 * 60 * 1000 );
97
+ hikariPoolConfig .setPoolName (ifExceptionOrEmpty (() -> config .getString (POOL_NAME ), hikariPoolConfig .getPoolName ()));
98
+ hikariPoolConfig .setRegisterMbeans (ifExceptionOrEmpty (() -> config .getBool (HIKARI_REGISTER_MBEANS ), hikariPoolConfig .isRegisterMbeans ()));
99
+ hikariPoolConfig .setConnectionTimeout (ifExceptionOrEmpty (() -> config .getLong (HIKARI_CONNECTION_TIMEOUT_MILLIS ), hikariPoolConfig .getConnectionTimeout ()));
100
+ hikariPoolConfig .setIdleTimeout (ifExceptionOrEmpty (() -> config .getLong (HIKARI_IDLE_TIMEOUT_MILLIS ), hikariPoolConfig .getIdleTimeout ()));
101
+ hikariPoolConfig .setMaxLifetime (ifExceptionOrEmpty (() -> config .getLong (HIKARI_MAX_LIFETIME_MILLIS ), hikariPoolConfig .getMaxLifetime ()));
102
+ hikariPoolConfig .setMinimumIdle (ifExceptionOrEmpty (() -> config .getInt (HIKARI_MINIMUM_IDLE ), hikariPoolConfig .getMinimumIdle ()));
103
+ hikariPoolConfig .setMaximumPoolSize (ifExceptionOrEmpty (() -> config .getInt (HIKARI_MAXIMUM_POOL_SIZE ), hikariPoolConfig .getMaximumPoolSize ()));
104
+ hikariPoolConfig .setAllowPoolSuspension (ifExceptionOrEmpty (() -> config .getBool (HIKARI_ALLOW_POOL_SUSPENSION ), hikariPoolConfig .isAllowPoolSuspension ()));
105
+ hikariPoolConfig .setInitializationFailTimeout (ifExceptionOrEmpty (
106
+ () -> config .getLong (HIKARI_INITIALIZATION_FAIL_TIMEOUT_MILLIS ),
107
+ hikariPoolConfig .getInitializationFailTimeout ())
108
+ );
109
+ hikariPoolConfig .setReadOnly (ifExceptionOrEmpty (() -> config .getBool (HIKARI_READ_ONLY ), hikariPoolConfig .isReadOnly ()));
110
+ hikariPoolConfig .setValidationTimeout (ifExceptionOrEmpty (() -> config .getLong (HIKARI_VALIDATION_TIMEOUT_MILLIS ), hikariPoolConfig .getValidationTimeout ()));
111
+ hikariPoolConfig .setLeakDetectionThreshold (ifExceptionOrEmpty (() -> config .getLong (HIKARI_LEAK_DETECTION_THRESHOLD_MILLIS ), hikariPoolConfig .getLeakDetectionThreshold ()));
112
+ hikariPoolConfig .setDataSourceProperties (ifExceptionOrEmpty (() -> config .getProperties (DRIVER_PROPERTIES ), new Properties ()));
106
113
return hikariPoolConfig ;
107
114
}
108
115
0 commit comments