List of usage examples for org.springframework.data.repository.config RepositoryBeanNameGenerator RepositoryBeanNameGenerator
RepositoryBeanNameGenerator
From source file:org.agilemicroservices.autoconfigure.orm.RepositoryConfigurationDelegate.java
/** * Creates a new {@link RepositoryConfigurationDelegate} for the given {@link RepositoryConfigurationSource} and * {@link ResourceLoader} and {@link Environment}. * * @param configurationSource must not be {@literal null}. * @param resourceLoader must not be {@literal null}. * @param environment must not be {@literal null}. *///from w w w. ja v a 2 s . c om public RepositoryConfigurationDelegate(RepositoryConfigurationSource configurationSource, ResourceLoader resourceLoader, Environment environment) { Assert.notNull(resourceLoader); RepositoryBeanNameGenerator generator = new RepositoryBeanNameGenerator(); generator.setBeanClassLoader(resourceLoader.getClassLoader()); this.beanNameGenerator = generator; this.configurationSource = configurationSource; this.resourceLoader = resourceLoader; this.environment = defaultEnvironment(environment, resourceLoader); this.inMultiStoreMode = multipleStoresDetected(); }
From source file:org.springframework.boot.autoconfigure.data.AbstractRepositoryConfigurationSourceSupport.java
@Override public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, final BeanDefinitionRegistry registry) { ResourceLoader resourceLoader = new DefaultResourceLoader(); AnnotationRepositoryConfigurationSource configurationSource = getConfigurationSource(); RepositoryConfigurationExtension extension = getRepositoryConfigurationExtension(); extension.registerBeansForRoot(registry, configurationSource); RepositoryBeanNameGenerator generator = new RepositoryBeanNameGenerator(); generator.setBeanClassLoader(this.beanClassLoader); Collection<RepositoryConfiguration<AnnotationRepositoryConfigurationSource>> repositoryConfigurations = extension .getRepositoryConfigurations(configurationSource, resourceLoader); for (RepositoryConfiguration<AnnotationRepositoryConfigurationSource> repositoryConfiguration : repositoryConfigurations) { RepositoryBeanDefinitionBuilder builder = new RepositoryBeanDefinitionBuilder(repositoryConfiguration, extension);/*from ww w . j av a2s .co m*/ BeanDefinitionBuilder definitionBuilder = builder.build(registry, resourceLoader); extension.postProcess(definitionBuilder, configurationSource); String beanName = generator.generateBeanName(definitionBuilder.getBeanDefinition(), registry); registry.registerBeanDefinition(beanName, definitionBuilder.getBeanDefinition()); } }