/** * * @author Craig Andrews * * {@link EnableAutoConfiguration Auto-configuration} for {@link RedissonCacheStatisticsProvider} * */ @Configuration @AutoConfigureAfter(CacheAutoConfiguration.class) @ConditionalOnBean(CacheManager.class) @ConditionalOnClass(CacheStatisticsProvider.class) public class RedissonCacheStatisticsAutoConfiguration { @Bean public RedissonCacheStatisticsProvider redissonCacheStatisticsProvider(){ return new RedissonCacheStatisticsProvider(); } }
@Bean @ConditionalOnMissingBean @ConditionalOnBean(MetricRegistry.class) public static GlobalMetricRegistry globalMetricRegistry(MetricRegistry metricRegistry) { return new GlobalMetricRegistry(metricRegistry); }
@ConditionalOnBean(TextEncryptor.class) @ConditionalOnMissingBean(TextEncryptorLocator.class) @Configuration class SingleTextEncryptorConfiguration { @Autowired private TextEncryptor encryptor; @Bean public SingleTextEncryptorLocator textEncryptorLocator() { return new SingleTextEncryptorLocator(encryptor); } }
@Bean @ConditionalOnBean(RedissonClient.class) public CounterManager counterManager(RedissonClient client) { return new RedissonCounterManager(client); }
@ConditionalOnBean(UserService.class) @Configuration public static class CustomEntityManagerAutoConfiguration { @Autowired private UserService userService; @Bean public CustomGroupEntityManagerFactory customGroupEntityManagerFactory() { return new CustomGroupEntityManagerFactory(new CustomGroupEntityManager(userService)); } @Bean public CustomUserEntityManagerFactory customUserEntityManagerFactory() { return new CustomUserEntityManagerFactory(new CustomUserEntityManager(userService)); } } }
@Bean(destroyMethod = "destroy") @ConditionalOnBean(DefaultMQProducer.class) @ConditionalOnMissingBean(name = "rocketMQTemplate") @Order(2) public RocketMQTemplate rocketMQTemplate(DefaultMQProducer mqProducer, @Autowired(required = false) @Qualifier("rocketMQMessageObjectMapper") ObjectMapper objectMapper) { RocketMQTemplate rocketMQTemplate = new RocketMQTemplate(); rocketMQTemplate.setProducer(mqProducer); if (Objects.nonNull(objectMapper)) { rocketMQTemplate.setObjectMapper(objectMapper); } return rocketMQTemplate; }
@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 @ConditionalOnBean(AutoServiceRegistrationProperties.class) @ConditionalOnProperty(value = "spring.cloud.service-registry.auto-registration.enabled", matchIfMissing = true) public AnsAutoServiceRegistration ansAutoServiceRegistration( AnsServiceRegistry registry, AutoServiceRegistrationProperties autoServiceRegistrationProperties, AnsRegistration registration) { return new AnsAutoServiceRegistration(registry, autoServiceRegistrationProperties, registration); }
@Bean @ConditionalOnMissingBean @ConditionalOnBean(GlobalMetricRegistry.class) @ConditionalOnProperty(value = "axon.metrics.auto-configuration.enabled", matchIfMissing = true) public static MetricsConfigurerModule metricsConfigurerModule(GlobalMetricRegistry globalMetricRegistry) { return new MetricsConfigurerModule(globalMetricRegistry); } }
/** * @author Spencer Gibb */ @Configuration @ConditionalOnBean(ConfigServerConfiguration.Marker.class) @EnableConfigurationProperties(ConfigServerProperties.class) @Import({ EnvironmentRepositoryConfiguration.class, CompositeConfiguration.class, ResourceRepositoryConfiguration.class, ConfigServerEncryptionConfiguration.class, ConfigServerMvcConfiguration.class }) public class ConfigServerAutoConfiguration { }
@ConditionalOnBean(EntityManagerFactory.class) @ConditionalOnMissingBean({EventStorageEngine.class, EventStore.class}) @RegisterDefaultEntities(packages = { "org.axonframework.eventsourcing.eventstore.jpa" }) @Configuration @AutoConfigureAfter(AxonServerAutoConfiguration.class) public class JpaEventStoreAutoConfiguration { @Bean public EventStorageEngine eventStorageEngine(Serializer defaultSerializer, PersistenceExceptionResolver persistenceExceptionResolver, @Qualifier("eventSerializer") Serializer eventSerializer, AxonConfiguration configuration, EntityManagerProvider entityManagerProvider, TransactionManager transactionManager) { return JpaEventStorageEngine.builder() .snapshotSerializer(defaultSerializer) .upcasterChain(configuration.upcasterChain()) .persistenceExceptionResolver(persistenceExceptionResolver) .eventSerializer(eventSerializer) .entityManagerProvider(entityManagerProvider) .transactionManager(transactionManager) .build(); } }
/** * @author zhouhao */ @Configuration @ConditionalOnClass({RedissonClient.class, RedissonLockManager.class}) @ConditionalOnBean(RedissonClient.class) public class RedisLockManagerAutoConfiguration { @Bean public LockManager lockManager(RedissonClient redissonClient) { return new RedissonLockManager(redissonClient); } }
@Configuration @ConditionalOnBean(CachingConnectionFactory.class) @ConditionalOnMissingBean(name = ZipkinAutoConfiguration.SENDER_BEAN_NAME) @Conditional(ZipkinSenderCondition.class) class ZipkinRabbitSenderConfiguration { @Value("${spring.zipkin.rabbitmq.queue:zipkin}") private String queue; @Bean(ZipkinAutoConfiguration.SENDER_BEAN_NAME) Sender rabbitSender(CachingConnectionFactory connectionFactory, RabbitProperties config) { return RabbitMQSender.newBuilder() .connectionFactory(connectionFactory.getRabbitConnectionFactory()) .queue(this.queue).addresses(config.determineAddresses()).build(); } }
@Configuration @ConditionalOnProperty(value = "spring.sleuth.async.enabled", matchIfMissing = true) @ConditionalOnBean(Tracing.class) public class AsyncDefaultAutoConfiguration {
@ConditionalOnBean(DataSource.class) @Configuration @AutoConfigureAfter(value = {JpaAutoConfiguration.class, JpaEventStoreAutoConfiguration.class}) public class JdbcAutoConfiguration {
@Bean @ConditionalOnMissingBean @ConditionalOnClass(PayGatePaymentService.class) @ConditionalOnBean({PayGateSettings.class}) public PayGatePaymentService paymentService(PayGateSettings payGateSettings) { return new PayGatePaymentService(payGateSettings); }
@Bean @ConditionalOnClass(RequestInterceptor.class) @ConditionalOnBean(OmegaContext.class) public RequestInterceptor feignClientRequestInterceptor(OmegaContext omegaContext){ return new FeignClientRequestInterceptor(omegaContext); } }
@ConditionalOnClass({ GrpcTracing.class, GRpcGlobalInterceptor.class }) @ConditionalOnProperty(value = "spring.sleuth.grpc.enabled", matchIfMissing = true) @ConditionalOnBean(Tracing.class) public class TraceGrpcAutoConfiguration {
@Bean @ConditionalOnMissingBean @ConditionalOnBean(PlatformTransactionManager.class) public TransactionManager axonTransactionManager(PlatformTransactionManager transactionManager) { return new SpringTransactionManager(transactionManager); } }
@Bean @ConditionalOnBean(RateLimiterManager.class) public RateLimiterAopAdvisor rateLimiterAopAdvisor(RateLimiterManager rateLimiterManager) { return new RateLimiterAopAdvisor(rateLimiterManager); } }