@Bean
        @ConditionalOnAvailableEndpoint
        @RefreshScope(proxyMode = ScopedProxyMode.DEFAULT)
        public CasPersonDirectoryEndpoint casPersonDirectoryEndpoint(
            @Qualifier("cachingAttributeRepository")
            final ObjectProvider<PersonAttributeDao> cachingAttributeRepository,
            @Qualifier(PersonDirectoryAttributeRepositoryPlan.BEAN_NAME)
            final ObjectProvider<PersonDirectoryAttributeRepositoryPlan> attributeRepositoryPlan,
            final ConfigurableApplicationContext applicationContext,
            final CasConfigurationProperties casProperties) {
            return new CasPersonDirectoryEndpoint(casProperties, applicationContext,
                cachingAttributeRepository, attributeRepositoryPlan);
        }
This is {@link CasPersonDirectoryConfiguration}.

@author Misagh Moayyed
@since 5.0.0
support/cas-server-support-person-directory/src/main/java/org/apereo/cas/config/CasPersonDirectoryConfiguration.java