boolean populateFromProperties(final Properties properties, final String prefix, final ClassLoader classLoader, final Builder defaultsBuilder) { // connection options String connectOptionsPrefix = prefix + "connect.options" + "."; setConnectionOptions(getOptionMapFromProperties(properties, connectOptionsPrefix, classLoader)); // connection timeout setConnectionTimeout(getLongValueFromProperties(properties, prefix + "connect.timeout", defaultsBuilder == null ? 5000L : defaultsBuilder.connectionTimeout)); // connect eagerly setConnectEagerly(Boolean.parseBoolean(getProperty(properties, prefix + "connect.eager", Boolean.toString(defaultsBuilder == null || defaultsBuilder.connectEagerly), true).trim())); // callback handler class final String callbackHandlerClassName = getProperty(properties, prefix + PROPERTY_KEY_CALLBACK_HANDLER_CLASS, null, true); setCallbackHandlerClassName(callbackHandlerClassName); final AuthenticationConfiguration.Builder authBuilder = new AuthenticationConfiguration.Builder(); if (authBuilder.populateFromProperties(properties, prefix, classLoader)) { setAuthenticationConfiguration(new AuthenticationConfiguration(authBuilder)); } else { if (defaultsBuilder != null) { setAuthenticationConfiguration(defaultsBuilder.authenticationConfiguration); } } setChannelOptions(getOptionMapFromProperties(properties, prefix + "channel.options" + ".", classLoader)); final ExceptionSupplier<CallbackHandler, ReflectiveOperationException> callbackHandlerSupplier = () -> Class.forName(callbackHandlerClassName, true, classLoader).asSubclass(CallbackHandler.class).getConstructor().newInstance(); return true; }
boolean populateFromProperties(final Properties properties, final String prefix, final ClassLoader classLoader, final Builder defaultsBuilder) { // connection options String connectOptionsPrefix = prefix + "connect.options" + "."; setConnectionOptions(getOptionMapFromProperties(properties, connectOptionsPrefix, classLoader)); // connection timeout setConnectionTimeout(getLongValueFromProperties(properties, prefix + "connect.timeout", defaultsBuilder == null ? 5000L : defaultsBuilder.connectionTimeout)); // connect eagerly setConnectEagerly(Boolean.parseBoolean(getProperty(properties, prefix + "connect.eager", Boolean.toString(defaultsBuilder == null || defaultsBuilder.connectEagerly), true).trim())); // callback handler class final String callbackHandlerClassName = getProperty(properties, prefix + PROPERTY_KEY_CALLBACK_HANDLER_CLASS, null, true); setCallbackHandlerClassName(callbackHandlerClassName); final AuthenticationConfiguration.Builder authBuilder = new AuthenticationConfiguration.Builder(); if (authBuilder.populateFromProperties(properties, prefix, classLoader)) { setAuthenticationConfiguration(new AuthenticationConfiguration(authBuilder)); } else { if (defaultsBuilder != null) { setAuthenticationConfiguration(defaultsBuilder.authenticationConfiguration); } } setChannelOptions(getOptionMapFromProperties(properties, prefix + "channel.options" + ".", classLoader)); final ExceptionSupplier<CallbackHandler, ReflectiveOperationException> callbackHandlerSupplier = () -> Class.forName(callbackHandlerClassName, true, classLoader).asSubclass(CallbackHandler.class).getConstructor().newInstance(); return true; }
boolean populateFromProperties(final Properties properties, final String prefix, final ClassLoader classLoader, final Builder defaultsBuilder) { // connection options String connectOptionsPrefix = prefix + "connect.options" + "."; setConnectionOptions(getOptionMapFromProperties(properties, connectOptionsPrefix, classLoader)); // connection timeout setConnectionTimeout(getLongValueFromProperties(properties, prefix + "connect.timeout", defaultsBuilder == null ? 5000L : defaultsBuilder.connectionTimeout)); // connect eagerly setConnectEagerly(Boolean.parseBoolean(getProperty(properties, prefix + "connect.eager", Boolean.toString(defaultsBuilder == null || defaultsBuilder.connectEagerly), true).trim())); // callback handler class final String callbackHandlerClassName = getProperty(properties, prefix + PROPERTY_KEY_CALLBACK_HANDLER_CLASS, null, true); setCallbackHandlerClassName(callbackHandlerClassName); final AuthenticationConfiguration.Builder authBuilder = new AuthenticationConfiguration.Builder(); if (authBuilder.populateFromProperties(properties, prefix, classLoader)) { setAuthenticationConfiguration(new AuthenticationConfiguration(authBuilder)); } else { if (defaultsBuilder != null) { setAuthenticationConfiguration(defaultsBuilder.authenticationConfiguration); } } setChannelOptions(getOptionMapFromProperties(properties, prefix + "channel.options" + ".", classLoader)); final ExceptionSupplier<CallbackHandler, ReflectiveOperationException> callbackHandlerSupplier = () -> Class.forName(callbackHandlerClassName, true, classLoader).asSubclass(CallbackHandler.class).getConstructor().newInstance(); return true; }