public static ApplicationContext rebindCasConfigurationProperties(
        final ConfigurationPropertiesBindingPostProcessor binder,
        final ApplicationContext applicationContext) {
        val config = applicationContext.getBean(CasConfigurationProperties.class);
        val name = String.format("%s-%s", CasConfigurationProperties.PREFIX, config.getClass().getName());
        binder.postProcessBeforeInitialization(config, name);
        val bean = applicationContext.getAutowireCapableBeanFactory().initializeBean(config, name);
        applicationContext.getAutowireCapableBeanFactory().autowireBean(bean);
        LOGGER.debug("Reloaded CAS configuration [{}]", name);
        return applicationContext;
    }
Rebind cas configuration properties.

@param binder             the binder
@param applicationContext the application context
@return the application context
core/cas-server-core-configuration-api/src/main/java/org/apereo/cas/configuration/CasConfigurationPropertiesEnvironmentManager.java