@ConditionalOnMissingBean(name = "authenticationHandlerResolversExecutionPlanConfigurer")
        @Bean
        @RefreshScope(proxyMode = ScopedProxyMode.DEFAULT)
        public AuthenticationEventExecutionPlanConfigurer authenticationHandlerResolversExecutionPlanConfigurer(
            @Qualifier("byCredentialSourceAuthenticationHandlerResolver")
            final ObjectProvider<AuthenticationHandlerResolver> byCredentialSourceAuthenticationHandlerResolver,
            @Qualifier("registeredServiceAuthenticationHandlerResolver")
            final AuthenticationHandlerResolver registeredServiceAuthenticationHandlerResolver,
            @Qualifier("registeredServiceAuthenticationPolicyResolver")
            final AuthenticationPolicyResolver registeredServiceAuthenticationPolicyResolver,
            @Qualifier("groovyAuthenticationHandlerResolver")
            final ObjectProvider<AuthenticationHandlerResolver> groovyAuthenticationHandlerResolver) {
            return plan -> {
                byCredentialSourceAuthenticationHandlerResolver.ifAvailable(plan::registerAuthenticationHandlerResolver);
                plan.registerAuthenticationHandlerResolver(registeredServiceAuthenticationHandlerResolver);
                plan.registerAuthenticationPolicyResolver(registeredServiceAuthenticationPolicyResolver);
                groovyAuthenticationHandlerResolver.ifAvailable(plan::registerAuthenticationHandlerResolver);
            };
        }
This is {@link CasCoreAuthenticationSupportConfiguration}.

@author Misagh Moayyed
@since 5.1.0
core/cas-server-core-authentication/src/main/java/org/apereo/cas/config/CasCoreAuthenticationSupportConfiguration.java