Skip to content

Instantly share code, notes, and snippets.

@nschlimm
Created July 30, 2011 12:55
Show Gist options
  • Save nschlimm/1115494 to your computer and use it in GitHub Desktop.
Save nschlimm/1115494 to your computer and use it in GitHub Desktop.
DecoratorBeanFactoryPostProcessor main
public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
Map<String, Class> decorators = decoratorResolutionStrategy.getRegisteredDecorators(beanFactory);
List<QualifiedDecoratorChain> chains = buildQualifiedDecoratorChains(beanFactory, decorators);
registerAutowireCandidateResolver(beanFactory, chains);
registerDecoratorMetadataBean(beanFactory, chains);
if (PROCESSOR.equals(getMode())) {
((DefaultListableBeanFactory) beanFactory).registerBeanDefinition(DECORATOR_POSTPROCESSOR_NAME, BeanDefinitionBuilder.rootBeanDefinition(DecoratorAwareBeanPostProcessor.class).getBeanDefinition());
if (beanFactory.getBeanNamesForType(DecoratorAwareBeanPostProcessor.class) == null) {
throw new DecoratorAwareBeanFactoryPostProcessorException("Mode 'resolver' requires DecoratorAwareBeanPostProcessor registered!");
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment