@RefreshScope(proxyMode = ScopedProxyMode.DEFAULT)
        @Bean
        @ConditionalOnMissingBean(name = "localeChangeInterceptor")
        public HandlerInterceptor localeChangeInterceptor(
            final ObjectProvider<CasConfigurationProperties> casProperties,
            @Qualifier(ServicesManager.BEAN_NAME)
            final ObjectProvider<ServicesManager> servicesManager,
            @Qualifier(ArgumentExtractor.BEAN_NAME)
            final ObjectProvider<ArgumentExtractor> argumentExtractor) {
            val localeProperties = casProperties.getObject().getLocale();
            val interceptor = new CasLocaleChangeInterceptor(casProperties,
                argumentExtractor, servicesManager);
            interceptor.setParamName(localeProperties.getParamName());
            interceptor.setSupportedFlows(List.of(
                CasWebflowConfigurer.FLOW_ID_LOGOUT,
                CasWebflowConfigurer.FLOW_ID_LOGIN));
            return interceptor;
        }
This is {@link CasWebflowContextConfiguration} that attempts to create Spring-managed beans
backed by external configuration.

@author Misagh Moayyed
@since 5.0.0
core/cas-server-core-webflow/src/main/java/org/apereo/cas/config/CasWebflowContextConfiguration.java