@Override public void afterPropertiesSet() throws Exception { poolingOptions = configureRemoteHostDistancePoolingOptions( configureLocalHostDistancePoolingOptions(newPoolingOptions())); if (heartbeatIntervalSeconds != DEFAULT.getHeartbeatIntervalSeconds()) { poolingOptions.setHeartbeatIntervalSeconds(heartbeatIntervalSeconds); } if (idleTimeoutSeconds != DEFAULT.getIdleTimeoutSeconds()) { poolingOptions.setIdleTimeoutSeconds(idleTimeoutSeconds); } if (initializationExecutor != null) { poolingOptions.setInitializationExecutor(initializationExecutor); } if (poolTimeoutMilliseconds != DEFAULT.getPoolTimeoutMillis()) { poolingOptions.setPoolTimeoutMillis(poolTimeoutMilliseconds); } if (!isDefaultMaxQueueSize()) { SET_MAX_QUEUE_SIZE.ifPresent(method -> invokeMethod(method, poolingOptions, maxQueueSize)); } }