@ConditionalOnMissingBean(DataSource.class) @ConditionalOnProperty(name = "spring.datasource.type") static class DataSourceAutoConfiguration { @Bean @ConfigurationProperties("spring.datasource") public DataSource dataSource(DataSourceProperties properties) { return properties.initializeDataSourceBuilder().build(); } }
/** * @author xiaolongzuo */ @ConditionalOnWebApplication @ConditionalOnClass(Endpoint.class) public class AnsEndpointAutoConfiguration { @Bean public AnsEndpoint ansEndpoint(AnsProperties ansProperties) { return new AnsEndpoint(ansProperties); } }
@ConditionalOnSingleCandidate(Notifier.class) static class HasSingleNotifierInstance { } }
@Bean @ConditionalOnMissingBean(UserInfoHolder.class) public UserInfoHolder springSecurityUserInfoHolder() { return new SpringSecurityUserInfoHolder(); }
@Bean @ConditionalOnMissingBean(BloomFilterManager.class) @ConditionalOnClass(name = "com.google.common.hash.BloomFilter") public BloomFilterManager bloomFilterManager() { return new GuavaBloomFilterManager(); } }
@Configuration @ConditionalOnProperty(prefix = "hsweb.authorize", name = "basic-authorization", havingValue = "true") @ConditionalOnClass(UserTokenForTypeParser.class) public static class BasicAuthorizationConfiguration { @Bean public BasicAuthorizationTokenParser basicAuthorizationTokenParser(AuthenticationManager authenticationManager, UserTokenManager tokenManager) { return new BasicAuthorizationTokenParser(authenticationManager, tokenManager); } } }
/** * @author zhouhao */ @Configuration @ConditionalOnClass({RedissonClient.class, RedissonLockManager.class}) @ConditionalOnBean(RedissonClient.class) public class RedisLockManagerAutoConfiguration { @Bean public LockManager lockManager(RedissonClient redissonClient) { return new RedissonLockManager(redissonClient); } }
/** * OSS {@link Endpoint} Auto-{@link Configuration} * * @author <a href="mailto:fangjian0423@gmail.com">Jim</a> */ @ConditionalOnClass(Endpoint.class) public class OssEndpointAutoConfiguration { @Bean @ConditionalOnMissingBean @ConditionalOnEnabledEndpoint public OssEndpoint ossEndpoint() { return new OssEndpoint(); } }
@Configuration @ConditionalOnBean(Notifier.class) public static class NotifierTriggerConfiguration { @Bean(initMethod = "start", destroyMethod = "stop") @ConditionalOnMissingBean public NotificationTrigger notificationTrigger(Notifier notifier, Publisher<InstanceEvent> events) { return new NotificationTrigger(notifier, events); } }
@Bean @ConditionalOnMissingBean(SsoHeartbeatHandler.class) public SsoHeartbeatHandler defaultSsoHeartbeatHandler() { return new DefaultSsoHeartbeatHandler(); }
@Configuration @ConditionalOnProperty(PropertySourcesConstants.APOLLO_BOOTSTRAP_ENABLED) @ConditionalOnMissingBean(PropertySourcesProcessor.class) public class ApolloAutoConfiguration { @Bean public ConfigPropertySourcesProcessor configPropertySourcesProcessor() { return new ConfigPropertySourcesProcessor(); } }
@Bean @ConditionalOnMissingBean(RateLimiterManager.class) @ConditionalOnClass(name = "com.google.common.util.concurrent.RateLimiter") public GuavaRateLimiterManager guavaRateLimiterManager() { return new GuavaRateLimiterManager(); }
@ConditionalOnWebApplication @ConditionalOnClass(Endpoint.class) public class SmsEndpointAutoConfiguration { @Bean public SmsEndpoint smsEndpoint() { return new SmsEndpoint(); } }
@Configuration @ConditionalOnSingleCandidate(FilteringNotifier.class) public static class FilteringNotifierWebConfiguration { private final FilteringNotifier filteringNotifier; public FilteringNotifierWebConfiguration(FilteringNotifier filteringNotifier) { this.filteringNotifier = filteringNotifier; } @Bean public NotificationFilterController notificationFilterController() { return new NotificationFilterController(filteringNotifier); } }
@Bean @ConditionalOnMissingBean(UserService.class) public UserService springSecurityUserService() { return new LdapUserService(); }
/** * @author xiaolongzuo */ @ConditionalOnWebApplication @ConditionalOnClass(Endpoint.class) public class ScxEndpointAutoConfiguration { @Bean @ConditionalOnMissingBean @ConditionalOnEnabledEndpoint public ScxEndpoint scxEndpoint(EdasProperties edasProperties, ScxProperties scxProperties) { return new ScxEndpoint(edasProperties, scxProperties); } }
@Bean @ConditionalOnMissingBean(SsoHeartbeatHandler.class) public SsoHeartbeatHandler defaultSsoHeartbeatHandler() { return new DefaultSsoHeartbeatHandler(); }
@ConditionalOnWebApplication @ConditionalOnClass(value = Endpoint.class) @Conditional(MigrateOnConditionClass.class) public class MigrateEndpointAutoConfiguration { @Bean public MigrateEndpoint ansEndpoint() { return new MigrateEndpoint(); } }
@Bean @ConditionalOnMissingBean(LogoutHandler.class) public DefaultLogoutHandler logoutHandler() { return new DefaultLogoutHandler(); }
@Bean @ConditionalOnMissingBean(UserInfoHolder.class) public UserInfoHolder springSecurityUserInfoHolder() { return new SpringSecurityUserInfoHolder(); }