List of usage examples for org.springframework.beans.factory ListableBeanFactory getBeanDefinitionNames
String[] getBeanDefinitionNames();
From source file:com.google.inject.spring.SpringIntegration.java
/** * Binds all Spring beans from the given factory by name. For a Spring bean * named "foo", this method creates a binding to the bean's type and * {@code @Named("foo")}.// w w w .j a v a2 s .c o m * * @see com.google.inject.name.Named * @see com.google.inject.name.Names#named(String) */ public static void bindAll(Binder binder, ListableBeanFactory beanFactory) { binder = binder.skipSources(SpringIntegration.class); for (String name : beanFactory.getBeanDefinitionNames()) { Class<?> type = beanFactory.getType(name); bindBean(binder, beanFactory, name, type); } }
From source file:net.paoding.rose.web.impl.module.ModulesBuilderImpl.java
public List<Module> build(List<ModuleResource> moduleResources, WebApplicationContext rootContext) throws Exception { // ????????//from w ww .j a va2s . c o m moduleResources = new ArrayList<ModuleResource>(moduleResources); Collections.sort(moduleResources); // ?? List<Module> modules = new ArrayList<Module>(moduleResources.size()); Map<ModuleResource, Module> modulesAsMap = new HashMap<ModuleResource, Module>(); // for (ModuleResource moduleResource : moduleResources) { final Module parentModule = (moduleResource.getParent() == null) ? null// : modulesAsMap.get(moduleResource.getParent()); final WebApplicationContext parentContext = (parentModule == null) ? rootContext// : parentModule.getApplicationContext(); final String namespace = "context@controllers" + moduleResource.getRelativePath().replace('/', '.'); // modulespring context final ServletContext servletContext = parentContext == null ? null // : parentContext.getServletContext(); final ModuleAppContext moduleContext = ModuleAppContext.createModuleContext(// parentContext, // moduleResource.getContextResources(), // moduleResource.getMessageBasenames(), // /*id*/moduleResource.getModuleUrl().toString(), // namespace// ); // ??...applicationContext registerBeanDefinitions(moduleContext, moduleResource.getModuleClasses()); // module final ModuleImpl module = new ModuleImpl(// parentModule, // moduleResource.getModuleUrl(), // moduleResource.getMappingPath(), // moduleResource.getRelativePath(), // moduleContext); // modulesAsMap.put(moduleResource, module); // servletContext if (servletContext != null) { String contextAttrKey = WebApplicationContext.class.getName() + "@" + moduleResource.getModuleUrl(); servletContext.setAttribute(contextAttrKey, moduleContext); } // Springweb??ParamValidatorParamResolver, ControllerInterceptor, ControllerErrorHandler List<ParamResolver> customerResolvers = findContextResolvers(moduleContext); // resolvers module.setCustomerResolvers(customerResolvers); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply resolvers " + customerResolvers); } // module List<InterceptorDelegate> interceptors = findInterceptors(moduleContext); for (Iterator<InterceptorDelegate> iter = interceptors.iterator(); iter.hasNext();) { InterceptorDelegate interceptor = iter.next(); ControllerInterceptor most = InterceptorDelegate.getMostInnerInterceptor(interceptor); if (!most.getClass().getName().startsWith("net.paoding.rose.web")) { // deny? if (moduleResource.getInterceptedDeny() != null) { if (RoseStringUtil.matches(moduleResource.getInterceptedDeny(), interceptor.getName())) { iter.remove(); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': remove interceptor by rose.properties: " + most.getClass().getName()); } continue; } } // allow? if (moduleResource.getInterceptedAllow() != null) { if (!RoseStringUtil.matches(moduleResource.getInterceptedAllow(), interceptor.getName())) { iter.remove(); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': remove interceptor by rose.properties: " + most.getClass().getName()); } continue; } } } } module.setControllerInterceptors(interceptors); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply intercetpors " + interceptors); } // validatormodule List<ParamValidator> validators = findContextValidators(moduleContext); module.setValidators(validators); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply global validators " + validators); } // errorhandler ControllerErrorHandler errorHandler = getContextErrorHandler(moduleContext); if (errorHandler != null) { if (Proxy.isProxyClass(errorHandler.getClass())) { module.setErrorHandler(errorHandler); } else { ErrorHandlerDispatcher dispatcher = new ErrorHandlerDispatcher(errorHandler); module.setErrorHandler(dispatcher); } if (logger.isInfoEnabled()) { logger.info("set errorHandler: " + module.getMappingPath() + " " + errorHandler); } } // controllers final ListableBeanFactory beanFactory = moduleContext.getBeanFactory(); for (String beanName : beanFactory.getBeanDefinitionNames()) { checkController(moduleContext, beanName, module); } // modules.add(module); } return modules; }
From source file:com.laxser.blitz.web.impl.module.ModulesBuilderImpl.java
public List<Module> build(List<ModuleResource> moduleResources, WebApplicationContext rootContext) throws Exception { // ????????//from w w w. j a v a 2s . c om moduleResources = new ArrayList<ModuleResource>(moduleResources); Collections.sort(moduleResources); // ?? List<Module> modules = new ArrayList<Module>(moduleResources.size()); Map<ModuleResource, Module> modulesAsMap = new HashMap<ModuleResource, Module>(); // for (ModuleResource moduleResource : moduleResources) { final Module parentModule = (moduleResource.getParent() == null) ? null// : modulesAsMap.get(moduleResource.getParent()); final WebApplicationContext parentContext = (parentModule == null) ? rootContext// : parentModule.getApplicationContext(); final String namespace = "context@controllers" + moduleResource.getRelativePath().replace('/', '.'); // modulespring context final ServletContext servletContext = parentContext == null ? null // : parentContext.getServletContext(); final ModuleAppContext moduleContext = ModuleAppContext.createModuleContext(// parentContext, // moduleResource.getContextResources(), // moduleResource.getMessageBasenames(), // /*id*/moduleResource.getModuleUrl().toString(), // namespace// ); // ??...applicationContext registerBeanDefinitions(moduleContext, moduleResource.getModuleClasses()); // module final ModuleImpl module = new ModuleImpl(// parentModule, // moduleResource.getModuleUrl(), // moduleResource.getMappingPath(), // moduleResource.getRelativePath(), // moduleContext); // modulesAsMap.put(moduleResource, module); // servletContext if (servletContext != null) { String contextAttrKey = WebApplicationContext.class.getName() + "@" + moduleResource.getModuleUrl(); servletContext.setAttribute(contextAttrKey, moduleContext); } // Springweb??ParamValidatorParamResolver, ControllerInterceptor, ControllerErrorHandler List<ParamResolver> customerResolvers = findContextResolvers(moduleContext); // resolvers module.setCustomerResolvers(customerResolvers); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply resolvers " + customerResolvers); } // module List<InterceptorDelegate> interceptors = findInterceptors(moduleContext); for (Iterator<InterceptorDelegate> iter = interceptors.iterator(); iter.hasNext();) { InterceptorDelegate interceptor = iter.next(); ControllerInterceptor most = InterceptorDelegate.getMostInnerInterceptor(interceptor); if (!most.getClass().getName().startsWith("net.paoding.rose.web")) { // deny? if (moduleResource.getInterceptedDeny() != null) { if (BlitzStringUtil.matches(moduleResource.getInterceptedDeny(), interceptor.getName())) { iter.remove(); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': remove interceptor by rose.properties: " + most.getClass().getName()); } continue; } } // allow? if (moduleResource.getInterceptedAllow() != null) { if (!BlitzStringUtil.matches(moduleResource.getInterceptedAllow(), interceptor.getName())) { iter.remove(); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': remove interceptor by rose.properties: " + most.getClass().getName()); } continue; } } } } module.setControllerInterceptors(interceptors); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply intercetpors " + interceptors); } // validatormodule List<ParamValidator> validators = findContextValidators(moduleContext); module.setValidators(validators); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply global validators " + validators); } // errorhandler ControllerErrorHandler errorHandler = getContextErrorHandler(moduleContext); if (errorHandler != null) { if (Proxy.isProxyClass(errorHandler.getClass())) { module.setErrorHandler(errorHandler); } else { ErrorHandlerDispatcher dispatcher = new ErrorHandlerDispatcher(errorHandler); module.setErrorHandler(dispatcher); } if (logger.isInfoEnabled()) { logger.info("set errorHandler: " + module.getMappingPath() + " " + errorHandler); } } // controllers final ListableBeanFactory beanFactory = moduleContext.getBeanFactory(); for (String beanName : beanFactory.getBeanDefinitionNames()) { checkController(moduleContext, beanName, module); } // modules.add(module); } return modules; }
From source file:com.sinosoft.one.mvc.web.impl.module.ModulesBuilderImpl.java
public List<Module> build(List<ModuleResource> moduleResources, WebApplicationContext rootContext) throws Exception { // ????????/* w w w.j av a 2s.c o m*/ moduleResources = new ArrayList<ModuleResource>(moduleResources); Collections.sort(moduleResources); // ?? List<Module> modules = new ArrayList<Module>(moduleResources.size()); Map<ModuleResource, Module> modulesAsMap = new HashMap<ModuleResource, Module>(); /* * ModuleResource ?web??? * modelResourcesmodel * */ for (ModuleResource moduleResource : moduleResources) { final Module parentModule = (moduleResource.getParent() == null) ? null// : modulesAsMap.get(moduleResource.getParent()); final WebApplicationContext parentContext = (parentModule == null) ? rootContext// : parentModule.getApplicationContext(); final String namespace = "context@controllers" + moduleResource.getRelativePath().replace('/', '.'); // modulespring context final ServletContext servletContext = parentContext == null ? null // : parentContext.getServletContext(); final ModuleAppContext moduleContext = ModuleAppContext.createModuleContext(// parentContext, // moduleResource.getContextResources(), // moduleResource.getMessageBasenames(), // /*id*/moduleResource.getModuleUrl().toString(), // namespace// ); // ??...applicationContext registerBeanDefinitions(moduleContext, moduleResource.getModuleClasses()); // module final ModuleImpl module = new ModuleImpl(// parentModule, // moduleResource.getModuleUrl(), // moduleResource.getMappingPath(), // moduleResource.getRelativePath(), // moduleContext); // modulesAsMap.put(moduleResource, module); // servletContext if (servletContext != null) { String contextAttrKey = WebApplicationContext.class.getName() + "@" + moduleResource.getModuleUrl(); servletContext.setAttribute(contextAttrKey, moduleContext); } // Springweb??ParamValidatorParamResolver, ControllerInterceptor, ControllerErrorHandler List<ParamResolver> customerResolvers = findContextResolvers(moduleContext); // resolvers module.setCustomerResolvers(customerResolvers); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply resolvers " + customerResolvers); } // module List<InterceptorDelegate> interceptors = findInterceptors(moduleContext); for (Iterator<InterceptorDelegate> iter = interceptors.iterator(); iter.hasNext();) { InterceptorDelegate interceptor = iter.next(); ControllerInterceptor most = InterceptorDelegate.getMostInnerInterceptor(interceptor); if (!most.getClass().getName().startsWith("com.sinosoft.one.mvc.web")) { // deny? if (moduleResource.getInterceptedDeny() != null) { if (MvcStringUtil.matches(moduleResource.getInterceptedDeny(), interceptor.getName())) { iter.remove(); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': remove interceptor by mvc.properties: " + most.getClass().getName()); } continue; } } // allow? if (moduleResource.getInterceptedAllow() != null) { if (!MvcStringUtil.matches(moduleResource.getInterceptedAllow(), interceptor.getName())) { iter.remove(); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': remove interceptor by mvc.properties: " + most.getClass().getName()); } continue; } } } } module.setControllerInterceptors(interceptors); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply intercetpors " + interceptors); } // validatormodule List<ParamValidator> validators = findContextValidators(moduleContext); module.setValidators(validators); if (logger.isDebugEnabled()) { logger.debug("module '" + module.getMappingPath() + "': apply global validators " + validators); } // errorhandler ControllerErrorHandler errorHandler = getContextErrorHandler(moduleContext); if (errorHandler != null) { if (Proxy.isProxyClass(errorHandler.getClass())) { module.setErrorHandler(errorHandler); } else { ErrorHandlerDispatcher dispatcher = new ErrorHandlerDispatcher(errorHandler); module.setErrorHandler(dispatcher); } if (logger.isInfoEnabled()) { logger.info("set errorHandler: " + module.getMappingPath() + " " + errorHandler); } } // controllers final ListableBeanFactory beanFactory = moduleContext.getBeanFactory(); for (String beanName : beanFactory.getBeanDefinitionNames()) { checkController(moduleContext, beanName, module); } // modules.add(module); } return modules; }
From source file:org.openadaptor.spring.SpringAdaptor.java
private void configureMBeanServer(ListableBeanFactory factory) { MBeanServer mbeanServer = (MBeanServer) getFirstBeanOfType(factory, MBeanServer.class); if (mbeanServer == null && jmxPort != 0) { mbeanServer = new org.openadaptor.core.jmx.MBeanServer(jmxPort); }/*w ww . java 2s.c o m*/ /* * Accesses message processors from the adaptor. Message processors that * under the hood wrap IRead & IWriteConnectors, IData & IEnrichmentProcessors * are capable of exposing component level metrics. Here they're registered * with the JMX server. */ Object adaptorObj = getFirstBeanOfType(factory, Adaptor.class); Map messageProcessorsByName = new HashMap(); if (adaptorObj != null) { Collection messageProcessors = ((Adaptor) adaptorObj).getMessageProcessors(); Iterator it = messageProcessors.iterator(); while (it.hasNext()) { IComponent messageProcessor = (IComponent) it.next(); messageProcessorsByName.put(messageProcessor.getId(), messageProcessor); } } /* Registers components with JMX server */ if (mbeanServer != null) { attemptToRegisterBean(new FactoryConfig(configUrls), mbeanServer, "Config"); String[] beanNames = factory.getBeanDefinitionNames(); for (int i = 0; i < beanNames.length; i++) { /* Register the bean */ Object bean = factory.getBean(beanNames[i]); if (bean instanceof Administrable) { bean = ((Administrable) bean).getAdmin(); } attemptToRegisterBean(bean, mbeanServer, beanNames[i]); /* Register the message processor corresponding to the bean */ IComponent msgProcessor = (IComponent) messageProcessorsByName.get(beanNames[i]); if (msgProcessor != null && msgProcessor instanceof Administrable) { bean = ((Administrable) msgProcessor).getAdmin(); attemptToRegisterBean(bean, mbeanServer, beanNames[i] + "-metrics"); } } } }
From source file:org.springframework.beans.factory.DefaultListableBeanFactoryTests.java
@Test public void testEmpty() { ListableBeanFactory lbf = new DefaultListableBeanFactory(); assertTrue("No beans defined --> array != null", lbf.getBeanDefinitionNames() != null); assertTrue("No beans defined after no arg constructor", lbf.getBeanDefinitionNames().length == 0); assertTrue("No beans defined after no arg constructor", lbf.getBeanDefinitionCount() == 0); }
From source file:org.springframework.beans.factory.DefaultListableBeanFactoryTests.java
private void testSingleTestBean(ListableBeanFactory lbf) { assertTrue("1 beans defined", lbf.getBeanDefinitionCount() == 1); String[] names = lbf.getBeanDefinitionNames(); assertTrue(names != lbf.getBeanDefinitionNames()); assertTrue("Array length == 1", names.length == 1); assertTrue("0th element == test", names[0].equals("test")); TestBean tb = (TestBean) lbf.getBean("test"); assertTrue("Test is non null", tb != null); assertTrue("Test bean name is Tony", "Tony".equals(tb.getName())); assertTrue("Test bean age is 48", tb.getAge() == 48); }