private ApplicationContext createContext(ScopedProxyMode scopedProxyMode) {
GenericWebApplicationContext context = new GenericWebApplicationContext();
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
scanner.setIncludeAnnotationConfig(false);
scanner.setBeanNameGenerator(new BeanNameGenerator() {
@Override
public String generateBeanName(BeanDefinition definition, BeanDefinitionRegistry registry) {
return definition.getScope();
}
});
scanner.setScopedProxyMode(scopedProxyMode);
// Scan twice in order to find errors in the bean definition compatibility check.
scanner.scan(getClass().getPackage().getName());
scanner.scan(getClass().getPackage().getName());
context.refresh();
return context;
}
java类org.springframework.beans.factory.support.BeanNameGenerator的实例源码
ClassPathBeanDefinitionScannerScopeIntegrationTests.java 文件源码
项目:spring4-understanding
阅读 22
收藏 0
点赞 0
评论 0
ClassPathBeanDefinitionScannerScopeIntegrationTests.java 文件源码
项目:class-guard
阅读 25
收藏 0
点赞 0
评论 0
private ApplicationContext createContext(ScopedProxyMode scopedProxyMode) {
GenericWebApplicationContext context = new GenericWebApplicationContext();
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner(context);
scanner.setIncludeAnnotationConfig(false);
scanner.setBeanNameGenerator(new BeanNameGenerator() {
@Override
public String generateBeanName(BeanDefinition definition, BeanDefinitionRegistry registry) {
return definition.getScope();
}
});
scanner.setScopedProxyMode(scopedProxyMode);
// Scan twice in order to find errors in the bean definition compatibility check.
scanner.scan(getClass().getPackage().getName());
scanner.scan(getClass().getPackage().getName());
context.refresh();
return context;
}
JaxRSBeanFactoryPostProcessor.java 文件源码
项目:TechnologyReadinessTool
阅读 36
收藏 0
点赞 0
评论 0
@Override
public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException {
if (registry.containsBeanDefinition("restServer")) {
BeanDefinition beanDefinition = registry.getBeanDefinition("restServer");
ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider(false);
scanner.addIncludeFilter(new AnnotationTypeFilter(Path.class));
BeanNameGenerator nameGenerator = new AnnotationBeanNameGenerator();
List<RuntimeBeanReference> beanNames = new ManagedList<>();
for (BeanDefinition definition : scanner.findCandidateComponents("net.techreadiness")) {
String beanName = nameGenerator.generateBeanName(definition, registry);
beanNames.add(new RuntimeBeanReference(beanName));
}
beanNames.addAll((Collection<? extends RuntimeBeanReference>) beanDefinition.getPropertyValues()
.getPropertyValue("serviceBeans").getValue());
beanDefinition.getPropertyValues().add("serviceBeans", beanNames);
}
}
ConfigurationClassParser.java 文件源码
项目:lams
阅读 45
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassParser} instance that will be used
* to populate the set of configuration classes.
*/
public ConfigurationClassParser(MetadataReaderFactory metadataReaderFactory,
ProblemReporter problemReporter, Environment environment, ResourceLoader resourceLoader,
BeanNameGenerator componentScanBeanNameGenerator, BeanDefinitionRegistry registry) {
this.metadataReaderFactory = metadataReaderFactory;
this.problemReporter = problemReporter;
this.environment = environment;
this.resourceLoader = resourceLoader;
this.registry = registry;
this.componentScanParser = new ComponentScanAnnotationParser(
resourceLoader, environment, componentScanBeanNameGenerator, registry);
this.conditionEvaluator = new ConditionEvaluator(registry, environment, resourceLoader);
}
ComponentScanAnnotationParser.java 文件源码
项目:lams
阅读 35
收藏 0
点赞 0
评论 0
public ComponentScanAnnotationParser(ResourceLoader resourceLoader, Environment environment,
BeanNameGenerator beanNameGenerator, BeanDefinitionRegistry registry) {
this.resourceLoader = resourceLoader;
this.environment = environment;
this.beanNameGenerator = beanNameGenerator;
this.registry = registry;
}
ComponentScanBeanDefinitionParser.java 文件源码
项目:lams
阅读 33
收藏 0
点赞 0
评论 0
protected void parseBeanNameGenerator(Element element, ClassPathBeanDefinitionScanner scanner) {
if (element.hasAttribute(NAME_GENERATOR_ATTRIBUTE)) {
BeanNameGenerator beanNameGenerator = (BeanNameGenerator) instantiateUserDefinedStrategy(
element.getAttribute(NAME_GENERATOR_ATTRIBUTE), BeanNameGenerator.class,
scanner.getResourceLoader().getClassLoader());
scanner.setBeanNameGenerator(beanNameGenerator);
}
}
ConfigurationClassBeanDefinitionReader.java 文件源码
项目:lams
阅读 30
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassBeanDefinitionReader} instance that will be used
* to populate the given {@link BeanDefinitionRegistry}.
*/
public ConfigurationClassBeanDefinitionReader(BeanDefinitionRegistry registry, SourceExtractor sourceExtractor,
ProblemReporter problemReporter, MetadataReaderFactory metadataReaderFactory,
ResourceLoader resourceLoader, Environment environment, BeanNameGenerator importBeanNameGenerator) {
this.registry = registry;
this.sourceExtractor = sourceExtractor;
this.problemReporter = problemReporter;
this.metadataReaderFactory = metadataReaderFactory;
this.resourceLoader = resourceLoader;
this.environment = environment;
this.importBeanNameGenerator = importBeanNameGenerator;
this.conditionEvaluator = new ConditionEvaluator(registry, environment, resourceLoader);
}
ConfigurationClassParser.java 文件源码
项目:spring4-understanding
阅读 29
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassParser} instance that will be used
* to populate the set of configuration classes.
*/
public ConfigurationClassParser(MetadataReaderFactory metadataReaderFactory,
ProblemReporter problemReporter, Environment environment, ResourceLoader resourceLoader,
BeanNameGenerator componentScanBeanNameGenerator, BeanDefinitionRegistry registry) {
this.metadataReaderFactory = metadataReaderFactory;
this.problemReporter = problemReporter;
this.environment = environment;
this.resourceLoader = resourceLoader;
this.registry = registry;
this.componentScanParser = new ComponentScanAnnotationParser(
resourceLoader, environment, componentScanBeanNameGenerator, registry);
this.conditionEvaluator = new ConditionEvaluator(registry, environment, resourceLoader);
}
ComponentScanAnnotationParser.java 文件源码
项目:spring4-understanding
阅读 29
收藏 0
点赞 0
评论 0
public ComponentScanAnnotationParser(ResourceLoader resourceLoader, Environment environment,
BeanNameGenerator beanNameGenerator, BeanDefinitionRegistry registry) {
this.resourceLoader = resourceLoader;
this.environment = environment;
this.beanNameGenerator = beanNameGenerator;
this.registry = registry;
}
ComponentScanBeanDefinitionParser.java 文件源码
项目:spring4-understanding
阅读 25
收藏 0
点赞 0
评论 0
protected void parseBeanNameGenerator(Element element, ClassPathBeanDefinitionScanner scanner) {
if (element.hasAttribute(NAME_GENERATOR_ATTRIBUTE)) {
BeanNameGenerator beanNameGenerator = (BeanNameGenerator) instantiateUserDefinedStrategy(
element.getAttribute(NAME_GENERATOR_ATTRIBUTE), BeanNameGenerator.class,
scanner.getResourceLoader().getClassLoader());
scanner.setBeanNameGenerator(beanNameGenerator);
}
}
ConfigurationClassBeanDefinitionReader.java 文件源码
项目:spring4-understanding
阅读 30
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassBeanDefinitionReader} instance that will be used
* to populate the given {@link BeanDefinitionRegistry}.
*/
ConfigurationClassBeanDefinitionReader(BeanDefinitionRegistry registry, SourceExtractor sourceExtractor,
ResourceLoader resourceLoader, Environment environment, BeanNameGenerator importBeanNameGenerator,
ImportRegistry importRegistry) {
this.registry = registry;
this.sourceExtractor = sourceExtractor;
this.resourceLoader = resourceLoader;
this.environment = environment;
this.importBeanNameGenerator = importBeanNameGenerator;
this.importRegistry = importRegistry;
this.conditionEvaluator = new ConditionEvaluator(registry, environment, resourceLoader);
}
ConfigurationClassParser.java 文件源码
项目:my-spring-cache-redis
阅读 31
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassParser} instance that will be used
* to populate the set of configuration classes.
*/
public ConfigurationClassParser(MetadataReaderFactory metadataReaderFactory,
ProblemReporter problemReporter, Environment environment, ResourceLoader resourceLoader,
BeanNameGenerator componentScanBeanNameGenerator, BeanDefinitionRegistry registry) {
this.metadataReaderFactory = metadataReaderFactory;
this.problemReporter = problemReporter;
this.environment = environment;
this.resourceLoader = resourceLoader;
this.registry = registry;
this.componentScanParser = new ComponentScanAnnotationParser(
resourceLoader, environment, componentScanBeanNameGenerator, registry);
this.conditionEvaluator = new ConditionEvaluator(registry, environment, resourceLoader);
}
ComponentScanAnnotationParser.java 文件源码
项目:my-spring-cache-redis
阅读 39
收藏 0
点赞 0
评论 0
public ComponentScanAnnotationParser(ResourceLoader resourceLoader, Environment environment,
BeanNameGenerator beanNameGenerator, BeanDefinitionRegistry registry) {
this.resourceLoader = resourceLoader;
this.environment = environment;
this.beanNameGenerator = beanNameGenerator;
this.registry = registry;
}
ComponentScanBeanDefinitionParser.java 文件源码
项目:my-spring-cache-redis
阅读 30
收藏 0
点赞 0
评论 0
protected void parseBeanNameGenerator(Element element, ClassPathBeanDefinitionScanner scanner) {
if (element.hasAttribute(NAME_GENERATOR_ATTRIBUTE)) {
BeanNameGenerator beanNameGenerator = (BeanNameGenerator) instantiateUserDefinedStrategy(
element.getAttribute(NAME_GENERATOR_ATTRIBUTE), BeanNameGenerator.class,
scanner.getResourceLoader().getClassLoader());
scanner.setBeanNameGenerator(beanNameGenerator);
}
}
ConfigurationClassBeanDefinitionReader.java 文件源码
项目:my-spring-cache-redis
阅读 34
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassBeanDefinitionReader} instance that will be used
* to populate the given {@link BeanDefinitionRegistry}.
*/
public ConfigurationClassBeanDefinitionReader(BeanDefinitionRegistry registry, SourceExtractor sourceExtractor,
ProblemReporter problemReporter, MetadataReaderFactory metadataReaderFactory,
ResourceLoader resourceLoader, Environment environment, BeanNameGenerator importBeanNameGenerator) {
this.registry = registry;
this.sourceExtractor = sourceExtractor;
this.problemReporter = problemReporter;
this.metadataReaderFactory = metadataReaderFactory;
this.resourceLoader = resourceLoader;
this.environment = environment;
this.importBeanNameGenerator = importBeanNameGenerator;
this.conditionEvaluator = new ConditionEvaluator(registry, environment, resourceLoader);
}
SpringApplicationTests.java 文件源码
项目:https-github.com-g0t4-jenkins2-course-spring-boot
阅读 25
收藏 0
点赞 0
评论 0
@Test
public void customBeanNameGenerator() throws Exception {
TestSpringApplication application = new TestSpringApplication(
ExampleWebConfig.class);
BeanNameGenerator beanNameGenerator = new DefaultBeanNameGenerator();
application.setBeanNameGenerator(beanNameGenerator);
this.context = application.run();
verify(application.getLoader()).setBeanNameGenerator(beanNameGenerator);
Object actualGenerator = this.context
.getBean(AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATOR);
assertThat(actualGenerator).isSameAs(beanNameGenerator);
}
SpringApplicationTests.java 文件源码
项目:https-github.com-g0t4-jenkins2-course-spring-boot
阅读 29
收藏 0
点赞 0
评论 0
@Test
public void customBeanNameGeneratorWithNonWebApplication() throws Exception {
TestSpringApplication application = new TestSpringApplication(
ExampleWebConfig.class);
application.setWebEnvironment(false);
BeanNameGenerator beanNameGenerator = new DefaultBeanNameGenerator();
application.setBeanNameGenerator(beanNameGenerator);
this.context = application.run();
verify(application.getLoader()).setBeanNameGenerator(beanNameGenerator);
Object actualGenerator = this.context
.getBean(AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATOR);
assertThat(actualGenerator).isSameAs(beanNameGenerator);
}
ConfigurationClassParser.java 文件源码
项目:spring
阅读 34
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassParser} instance that will be used
* to populate the set of configuration classes.
*/
public ConfigurationClassParser(MetadataReaderFactory metadataReaderFactory,
ProblemReporter problemReporter, Environment environment, ResourceLoader resourceLoader,
BeanNameGenerator componentScanBeanNameGenerator, BeanDefinitionRegistry registry) {
this.metadataReaderFactory = metadataReaderFactory;
this.problemReporter = problemReporter;
this.environment = environment;
this.resourceLoader = resourceLoader;
this.registry = registry;
this.componentScanParser = new ComponentScanAnnotationParser(
resourceLoader, environment, componentScanBeanNameGenerator, registry);
this.conditionEvaluator = new ConditionEvaluator(registry, environment, resourceLoader);
}
ComponentScanAnnotationParser.java 文件源码
项目:spring
阅读 30
收藏 0
点赞 0
评论 0
public ComponentScanAnnotationParser(ResourceLoader resourceLoader, Environment environment,
BeanNameGenerator beanNameGenerator, BeanDefinitionRegistry registry) {
this.resourceLoader = resourceLoader;
this.environment = environment;
this.beanNameGenerator = beanNameGenerator;
this.registry = registry;
}
ComponentScanBeanDefinitionParser.java 文件源码
项目:spring
阅读 27
收藏 0
点赞 0
评论 0
protected void parseBeanNameGenerator(Element element, ClassPathBeanDefinitionScanner scanner) {
if (element.hasAttribute(NAME_GENERATOR_ATTRIBUTE)) {
BeanNameGenerator beanNameGenerator = (BeanNameGenerator) instantiateUserDefinedStrategy(
element.getAttribute(NAME_GENERATOR_ATTRIBUTE), BeanNameGenerator.class,
scanner.getResourceLoader().getClassLoader());
scanner.setBeanNameGenerator(beanNameGenerator);
}
}
ConfigurationClassBeanDefinitionReader.java 文件源码
项目:spring
阅读 28
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassBeanDefinitionReader} instance that will be used
* to populate the given {@link BeanDefinitionRegistry}.
*/
ConfigurationClassBeanDefinitionReader(BeanDefinitionRegistry registry, SourceExtractor sourceExtractor,
ResourceLoader resourceLoader, Environment environment, BeanNameGenerator importBeanNameGenerator,
ImportRegistry importRegistry) {
this.registry = registry;
this.sourceExtractor = sourceExtractor;
this.resourceLoader = resourceLoader;
this.environment = environment;
this.importBeanNameGenerator = importBeanNameGenerator;
this.importRegistry = importRegistry;
this.conditionEvaluator = new ConditionEvaluator(registry, environment, resourceLoader);
}
SpringApplicationTests.java 文件源码
项目:spring-boot-concourse
阅读 27
收藏 0
点赞 0
评论 0
@Test
public void customBeanNameGenerator() throws Exception {
TestSpringApplication application = new TestSpringApplication(
ExampleWebConfig.class);
BeanNameGenerator beanNameGenerator = new DefaultBeanNameGenerator();
application.setBeanNameGenerator(beanNameGenerator);
this.context = application.run();
verify(application.getLoader()).setBeanNameGenerator(beanNameGenerator);
Object bean = this.context
.getBean(AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATOR);
assertThat(bean).isSameAs(beanNameGenerator);
}
ConfigurationClassParser.java 文件源码
项目:mybatis-spring-1.2.2
阅读 32
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassParser} instance that will be used
* to populate the set of configuration classes.
*/
public ConfigurationClassParser(MetadataReaderFactory metadataReaderFactory,
ProblemReporter problemReporter, Environment environment, ResourceLoader resourceLoader,
BeanNameGenerator componentScanBeanNameGenerator, BeanDefinitionRegistry registry) {
this.metadataReaderFactory = metadataReaderFactory;
this.problemReporter = problemReporter;
this.environment = environment;
this.resourceLoader = resourceLoader;
this.registry = registry;
this.componentScanParser = new ComponentScanAnnotationParser(
resourceLoader, environment, componentScanBeanNameGenerator, registry);
}
SpringApplicationTests.java 文件源码
项目:contestparser
阅读 30
收藏 0
点赞 0
评论 0
@Test
public void customBeanNameGenerator() throws Exception {
TestSpringApplication application = new TestSpringApplication(
ExampleWebConfig.class);
BeanNameGenerator beanNameGenerator = new DefaultBeanNameGenerator();
application.setBeanNameGenerator(beanNameGenerator);
this.context = application.run();
verify(application.getLoader()).setBeanNameGenerator(beanNameGenerator);
assertThat(
this.context
.getBean(AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATOR),
sameInstance((Object) beanNameGenerator));
}
ConfigurationClassParser.java 文件源码
项目:class-guard
阅读 34
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassParser} instance that will be used
* to populate the set of configuration classes.
*/
public ConfigurationClassParser(MetadataReaderFactory metadataReaderFactory,
ProblemReporter problemReporter, Environment environment, ResourceLoader resourceLoader,
BeanNameGenerator componentScanBeanNameGenerator, BeanDefinitionRegistry registry) {
this.metadataReaderFactory = metadataReaderFactory;
this.problemReporter = problemReporter;
this.environment = environment;
this.resourceLoader = resourceLoader;
this.registry = registry;
this.componentScanParser = new ComponentScanAnnotationParser(
resourceLoader, environment, componentScanBeanNameGenerator, registry);
}
ComponentScanAnnotationParser.java 文件源码
项目:class-guard
阅读 29
收藏 0
点赞 0
评论 0
public ComponentScanAnnotationParser(ResourceLoader resourceLoader, Environment environment,
BeanNameGenerator beanNameGenerator, BeanDefinitionRegistry registry) {
this.resourceLoader = resourceLoader;
this.environment = environment;
this.beanNameGenerator = beanNameGenerator;
this.registry = registry;
}
ComponentScanBeanDefinitionParser.java 文件源码
项目:class-guard
阅读 32
收藏 0
点赞 0
评论 0
protected void parseBeanNameGenerator(Element element, ClassPathBeanDefinitionScanner scanner) {
if (element.hasAttribute(NAME_GENERATOR_ATTRIBUTE)) {
BeanNameGenerator beanNameGenerator = (BeanNameGenerator) instantiateUserDefinedStrategy(
element.getAttribute(NAME_GENERATOR_ATTRIBUTE), BeanNameGenerator.class,
scanner.getResourceLoader().getClassLoader());
scanner.setBeanNameGenerator(beanNameGenerator);
}
}
ConfigurationClassBeanDefinitionReader.java 文件源码
项目:class-guard
阅读 35
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassBeanDefinitionReader} instance that will be used
* to populate the given {@link BeanDefinitionRegistry}.
*/
public ConfigurationClassBeanDefinitionReader(
BeanDefinitionRegistry registry, SourceExtractor sourceExtractor,
ProblemReporter problemReporter, MetadataReaderFactory metadataReaderFactory,
ResourceLoader resourceLoader, Environment environment, BeanNameGenerator importBeanNameGenerator) {
this.registry = registry;
this.sourceExtractor = sourceExtractor;
this.problemReporter = problemReporter;
this.metadataReaderFactory = metadataReaderFactory;
this.resourceLoader = resourceLoader;
this.environment = environment;
this.importBeanNameGenerator = importBeanNameGenerator;
}
ConfigurationClassBeanDefinitionReader.java 文件源码
项目:spring-autowire-qualified-beans
阅读 29
收藏 0
点赞 0
评论 0
/**
* Create a new {@link ConfigurationClassBeanDefinitionReader} instance that will be used to populate the given
* {@link BeanDefinitionRegistry}.
*/
public ConfigurationClassBeanDefinitionReader(final BeanDefinitionRegistry registry, final SourceExtractor sourceExtractor,
final ProblemReporter problemReporter, final MetadataReaderFactory metadataReaderFactory, final ResourceLoader resourceLoader,
final Environment environment, final BeanNameGenerator importBeanNameGenerator) {
this.registry = registry;
this.sourceExtractor = sourceExtractor;
this.problemReporter = problemReporter;
this.metadataReaderFactory = metadataReaderFactory;
this.resourceLoader = resourceLoader;
this.environment = environment;
this.importBeanNameGenerator = importBeanNameGenerator;
}
ServerApplication.java 文件源码
项目:netty-http-3.x
阅读 35
收藏 0
点赞 0
评论 0
private void initialize(String defaultProfile, boolean autoScan) {
ServerConfiguration serverConfiguration = mainClass.getAnnotation(ServerConfiguration.class);
if (serverConfiguration != null && serverConfiguration.beanNameGenerator() != BeanNameGenerator.class) {
try {
applicationContext.setBeanNameGenerator(serverConfiguration.beanNameGenerator().newInstance());
} catch (Exception ignored) {
}
}
applicationContext.register(mainClass);
if (autoScan) {
applicationContext.scan(mainClass.getPackage().getName());
}
Set<String> activeProfiles = Sets.newLinkedHashSet();
String profileProperty = System.getProperty(AbstractEnvironment.ACTIVE_PROFILES_PROPERTY_NAME, defaultProfile);
if (StringUtils.isNotBlank(profileProperty)) {
applicationContext.getEnvironment().setActiveProfiles(StringUtils.split(profileProperty, ","));
Collections.addAll(activeProfiles, StringUtils.split(profileProperty, ","));
logger.warn("activeProfiles are {}", activeProfiles);
}
Set<Resource> resources = getPropertiesResources(serverConfiguration == null ? null : serverConfiguration.properties());
ServerPropertiesConfigurer serverPropertiesConfigurer = new ServerPropertiesConfigurer(activeProfiles, resources);
serverPropertiesConfigurer.setIgnoreUnresolvablePlaceholders(true);
applicationContext.addBeanFactoryPostProcessor(serverPropertiesConfigurer);
this.properties = ServerPropertiesConfigurer.mergeProperties(activeProfiles, resources);
applicationContext.setEnvironment(new StandardEnvironment() {
@Override
protected void customizePropertySources(MutablePropertySources propertySources) {
propertySources.addFirst(new PropertiesPropertySource("applicationProperties", properties));
super.customizePropertySources(propertySources);
}
});
for (ServerProcessor serverProcessor : ServerProcessor.values()) {
serverProcessor.register(mainClass, applicationContext, properties);
}
if (defaultProfile != null && !activeProfiles.contains(defaultProfile)) {
pidFileWriter = new PidFileWriter(new File(System.getProperty("app.home", "."), "logs/pid"));
}
applicationContext.refresh();
}