List of usage examples for org.springframework.beans.factory.support BeanDefinitionRegistry getBeanDefinitionNames
String[] getBeanDefinitionNames();
From source file:com.laxser.blitz.web.impl.module.ModuleAppContext.java
/** ?messageSourceRose? */ public static void registerMessageSourceIfNecessary(BeanDefinitionRegistry registry, String[] messageBaseNames) { if (!ArrayUtils.contains(registry.getBeanDefinitionNames(), MESSAGE_SOURCE_BEAN_NAME)) { logger.debug("registerMessageSource " + ArrayUtils.toString(messageBaseNames)); GenericBeanDefinition messageSource = new GenericBeanDefinition(); messageSource.setBeanClass(ReloadableResourceBundleMessageSource.class); MutablePropertyValues propertyValues = new MutablePropertyValues(); propertyValues.addPropertyValue("useCodeAsDefaultMessage", true); propertyValues.addPropertyValue("defaultEncoding", "UTF-8"); // propertiesUTF-8?ISO-9959-1 propertyValues.addPropertyValue("cacheSeconds", 60); // hardcode! 60 propertyValues.addPropertyValue("basenames", messageBaseNames); messageSource.setPropertyValues(propertyValues); registry.registerBeanDefinition(MESSAGE_SOURCE_BEAN_NAME, messageSource); }/*from w ww . java 2s. c om*/ }
From source file:de.axelfaust.alfresco.hackathon.cmisserver.repo.beans.PatternBasedBeanRemovingFactoryPostProcessor.java
/** * {@inheritDoc}/*from ww w . j a v a2 s . c om*/ */ @Override public void postProcessBeanDefinitionRegistry(final BeanDefinitionRegistry registry) throws BeansException { for (final String beanName : registry.getBeanDefinitionNames()) { if (beanName.matches(this.beanNamePattern) && !this.excludeBeanNames.contains(beanName)) { registry.removeBeanDefinition(beanName); } } }
From source file:com.github.philippn.springremotingautoconfigure.server.annotation.HttpInvokerServiceExporterRegistrar.java
@Override public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException { for (String beanName : registry.getBeanDefinitionNames()) { BeanDefinition definition = registry.getBeanDefinition(beanName); if (definition.getBeanClassName() != null) { try { Class<?> resolvedClass = ClassUtils.forName(definition.getBeanClassName(), null); Class<?>[] beanInterfaces = resolvedClass.getInterfaces(); for (Class<?> clazz : beanInterfaces) { if (AnnotationUtils.isAnnotationDeclaredLocally(RemoteExport.class, clazz)) { setupExport(clazz, beanName, registry); }//from ww w . ja va 2 s .co m } } catch (ClassNotFoundException e) { throw new IllegalStateException("Unable to inspect class " + definition.getBeanClassName() + " for @RemoteExport annotations"); } } } }
From source file:minium.script.js.JsVariablePostProcessor.java
@Override public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException { String[] beanDefinitionNames = registry.getBeanDefinitionNames(); for (String beanDefinitionName : beanDefinitionNames) { BeanDefinition beanDefinition = registry.getBeanDefinition(beanDefinitionName); if (beanDefinition instanceof AnnotatedBeanDefinition) { MethodMetadata metadata = ((AnnotatedBeanDefinition) beanDefinition).getFactoryMethodMetadata(); if (metadata == null) continue; MultiValueMap<String, Object> attrs = metadata .getAllAnnotationAttributes(JsVariable.class.getName()); if (attrs == null) continue; variables.put(beanDefinitionName, attrs); }//from w w w .j a v a2 s . c om } }
From source file:net.peakplatform.sonar.plugins.spring.SpringSensor.java
private void checkXmlFile(final Project project, final SensorContext sensorContext, final org.sonar.api.resources.File beanFile) { String sourceDirectory = (String) project.getProperty(SpringPlugin.SOURCE_DIRECTORY); LOGGER.info("SpringSensor analyse sourceDirectory: " + sourceDirectory); File springBeanDefinition = this.projectFileSystem .resolvePath(sourceDirectory + "/" + beanFile.getLongName()); org.springframework.core.io.Resource beanDefinitionsXML = new FileSystemResource( springBeanDefinition.getAbsolutePath()); int beanCount = beanDefinitionReader.loadBeanDefinitions(beanDefinitionsXML); LOGGER.info("BeanClassCheck validate " + beanCount + " beans loaded."); BeanDefinitionRegistry beanDefinitionRegistry = beanDefinitionReader.getRegistry(); String[] beanDefinitionNames = beanDefinitionRegistry.getBeanDefinitionNames(); for (String beanDefinitionName : beanDefinitionNames) { LOGGER.info("BeanClassCheck validate beanDefinitionName: " + beanDefinitionName); BeanDefinition beanDefinition = beanDefinitionRegistry.getBeanDefinition(beanDefinitionName); BeanSourceCode beanSourceCode = new BeanSourceCode(beanFile, beanDefinition); for (BeanCheck beanCheck : springChecks) { LOGGER.info("SpringSensor analyse BeanCheck: " + beanCheck.getClass().getName()); beanCheck.validate(beanSourceCode, project); }//from ww w . jav a 2 s . com LOGGER.info("SpringSensor analyse beanSourceCode.getViolations().size(): " + beanSourceCode.getViolations().size()); for (Violation violation : beanSourceCode.getViolations()) { LOGGER.info("SpringSensor analyse violation.getMessage(): " + violation.getMessage()); sensorContext.saveViolation(violation); } } }
From source file:com.griddynamics.banshun.StrictContextParentBean.java
@Override protected List<String> analyzeDependencies(List<String> configLocations) throws Exception { ContextAnalyzer analyzer = new ContextAnalyzer(); List<Exception> exceptions = new LinkedList<>(); List<String> limitedLocations = new ArrayList<>(); for (String loc : configLocations) { BeanDefinitionRegistry beanFactory = getBeanFactory(loc); String[] beanNames = beanFactory.getBeanDefinitionNames(); for (String beanName : beanNames) { BeanDefinition beanDefinition = beanFactory.getBeanDefinition(beanName); try { if (isExport(beanDefinition)) { analyzer.addExport(beanDefinition); if (checkForRunOnly(beanName)) { limitedLocations.add(loc); }/*w w w .j a v a2 s . c o m*/ } else if (isImport(beanDefinition)) { analyzer.addImport(beanDefinition); } else if (beanDefinition.getBeanClassName() != null) { checkClassExist(loc, beanName, beanDefinition.getBeanClassName()); } } catch (Exception ex) { exceptions.add(ex); } } } analyzer.areThereExportsWithoutImport(); if (analyzer.areThereImportsWithoutExports() || !analyzer.areImportsTypesCorrect()) { exceptions.add(new BeanDefinitionValidationException( "There are severe errors while parsing contexts. See logs for details")); } if (!exceptions.isEmpty()) { for (Exception exception : exceptions) { log.error(exception.getMessage()); } throw exceptions.get(0); } DependencySorter sorter = new DependencySorter(configLocations.toArray(new String[0]), analyzer.getImports(), analyzer.getExports()); sorter.setProhibitCycles(prohibitCycles); locationsGraph = new LocationsGraph(analyzer.getImports(), analyzer.getExports()); List<String> analyzedConfigLocations = locationsGraph.filterConfigLocations(limitedLocations, sorter.sort()); log.info("ordered list of the contexts: {}", analyzedConfigLocations); return analyzedConfigLocations; }
From source file:tk.mybatis.spring.mapper.MapperScannerConfigurer.java
/** * ??MapperFactoryBean?//from w w w . ja va 2s . c om * * @param registry */ @Override public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) { super.postProcessBeanDefinitionRegistry(registry); //?Mapper? this.mapperHelper.ifEmptyRegisterDefaultInterface(); String[] names = registry.getBeanDefinitionNames(); GenericBeanDefinition definition; for (String name : names) { BeanDefinition beanDefinition = registry.getBeanDefinition(name); if (beanDefinition instanceof GenericBeanDefinition) { definition = (GenericBeanDefinition) beanDefinition; if (StringUtil.isNotEmpty(definition.getBeanClassName()) && definition.getBeanClassName().equals("org.mybatis.spring.mapper.MapperFactoryBean")) { definition.setBeanClass(MapperFactoryBean.class); definition.getPropertyValues().add("mapperHelper", this.mapperHelper); } } } }
From source file:com.github.philippn.springremotingautoconfigure.client.annotation.HttpInvokerProxyFactoryBeanRegistrar.java
@Override public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException { Set<String> basePackages = new HashSet<>(); for (String beanName : registry.getBeanDefinitionNames()) { BeanDefinition definition = registry.getBeanDefinition(beanName); if (definition.getBeanClassName() != null) { try { Class<?> resolvedClass = ClassUtils.forName(definition.getBeanClassName(), null); EnableHttpInvokerAutoProxy autoProxy = AnnotationUtils.findAnnotation(resolvedClass, EnableHttpInvokerAutoProxy.class); if (autoProxy != null) { if (autoProxy.basePackages().length > 0) { Collections.addAll(basePackages, autoProxy.basePackages()); } else { basePackages.add(resolvedClass.getPackage().getName()); }//w w w . ja v a2s .c o m } } catch (ClassNotFoundException e) { throw new IllegalStateException("Unable to inspect class " + definition.getBeanClassName() + " for @EnableHttpInvokerAutoProxy annotations"); } } } ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider( false) { /* (non-Javadoc) * @see org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider#isCandidateComponent(org.springframework.beans.factory.annotation.AnnotatedBeanDefinition) */ @Override protected boolean isCandidateComponent(AnnotatedBeanDefinition beanDefinition) { return beanDefinition.getMetadata().isInterface() && beanDefinition.getMetadata().isIndependent(); } }; scanner.addIncludeFilter(new AnnotationTypeFilter(RemoteExport.class)); for (String basePackage : basePackages) { for (BeanDefinition definition : scanner.findCandidateComponents(basePackage)) { if (definition.getBeanClassName() != null) { try { Class<?> resolvedClass = ClassUtils.forName(definition.getBeanClassName(), null); setupProxy(resolvedClass, registry); } catch (ClassNotFoundException e) { throw new IllegalStateException("Unable to inspect class " + definition.getBeanClassName() + " for @RemoteExport annotations"); } } } } }
From source file:com.arondor.common.reflection.parser.spring.XMLBeanDefinitionParser.java
public ObjectConfigurationMap parse() { BeanDefinitionRegistry registry = getBeanDefinitionRegistry(); ObjectConfigurationMap parsedObjectConfiguration = objectConfigurationFactory .createObjectConfigurationMap(); for (String beanDefinitionName : registry.getBeanDefinitionNames()) { LOGGER.debug("Bean defintion name : " + beanDefinitionName); ObjectConfiguration objectConfiguration = parseBeanDefinition(beanDefinitionName); objectConfiguration.setObjectName(beanDefinitionName); parsedObjectConfiguration.put(beanDefinitionName, objectConfiguration); }/*from ww w . j a va 2s .c om*/ return parsedObjectConfiguration; }