List of usage examples for org.springframework.beans.factory.support GenericBeanDefinition setScope
@Override public void setScope(@Nullable String scope)
From source file:io.nuun.plugin.spring.UsingSpringAsDIPlugin.java
public Object nativeUnitModule() { ClassPathXmlApplicationContext parentCtx = new ClassPathXmlApplicationContext("context.xml"); StaticApplicationContext dynCtx = new StaticApplicationContext(); GenericBeanDefinition beanDef = new GenericBeanDefinition(); beanDef.setBeanClass(Service3Internal.class); beanDef.setScope("prototype"); dynCtx.registerBeanDefinition("service3", beanDef); dynCtx.setParent(parentCtx);/* w w w . j a v a 2 s.c om*/ dynCtx.refresh(); return dynCtx; }
From source file:org.nuunframework.spring.UsingSpringAsDIPlugin.java
@Override public Object dependencyInjectionDef() { ClassPathXmlApplicationContext parentCtx = new ClassPathXmlApplicationContext("context.xml"); StaticApplicationContext dynCtx = new StaticApplicationContext(); GenericBeanDefinition beanDef = new GenericBeanDefinition(); beanDef.setBeanClass(Service3Internal.class); beanDef.setScope("prototype"); dynCtx.registerBeanDefinition("service3", beanDef); dynCtx.setParent(parentCtx);/* w ww .j av a2 s . co m*/ dynCtx.refresh(); return dynCtx; }
From source file:org.jacp.project.launcher.SpringLauncher.java
@Override public synchronized <T> T registerAndGetBean(Class<? extends T> type, final String id, final Scope scope) { if (this.factory.containsBean(id)) return getBean(type); final AutowireCapableBeanFactory factory = getContext().getAutowireCapableBeanFactory(); final BeanDefinitionRegistry registry = (BeanDefinitionRegistry) factory; final GenericBeanDefinition beanDefinition = new GenericBeanDefinition(); beanDefinition.setBeanClass(type);//from ww w . j av a2s . c om beanDefinition.setScope(scope.getType()); beanDefinition.setAutowireCandidate(true); registry.registerBeanDefinition(id, beanDefinition); factory.autowireBeanProperties(this, AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, false); return getBean(type); }
From source file:org.codehaus.griffon.runtime.spring.GriffonApplicationContext.java
/** * Register a prototype bean with the underlying bean factory. * <p>For more advanced needs, register with the underlying BeanFactory directly. * @see #getDefaultListableBeanFactory/*from ww w .java 2s .c o m*/ */ public void registerPrototype(String name, Class clazz) throws BeansException { GenericBeanDefinition bd = new GenericBeanDefinition(); bd.setScope(GenericBeanDefinition.SCOPE_PROTOTYPE); bd.setBeanClass(clazz); getDefaultListableBeanFactory().registerBeanDefinition(name, bd); }
From source file:org.codehaus.griffon.runtime.spring.GriffonApplicationContext.java
/** * Register a prototype bean with the underlying bean factory. * <p>For more advanced needs, register with the underlying BeanFactory directly. * @see #getDefaultListableBeanFactory//ww w .java2 s . c o m */ public void registerPrototype(String name, Class clazz, MutablePropertyValues pvs) throws BeansException { GenericBeanDefinition bd = new GenericBeanDefinition(); bd.setScope(GenericBeanDefinition.SCOPE_PROTOTYPE); bd.setBeanClass(clazz); bd.setPropertyValues(pvs); getDefaultListableBeanFactory().registerBeanDefinition(name, bd); }
From source file:org.jacpfx.spring.launcher.SpringXmlConfigLauncher.java
@Override public synchronized <T> T registerAndGetBean(Class<? extends T> type, final String id, final Scope scope) { if (contains(id)) return getBean(id); final AutowireCapableBeanFactory factory = getContext().getAutowireCapableBeanFactory(); final BeanDefinitionRegistry registry = (BeanDefinitionRegistry) factory; final GenericBeanDefinition beanDefinition = new GenericBeanDefinition(); beanDefinition.setBeanClass(type);/*w ww . j a v a2 s . c o m*/ if (scope != null) beanDefinition.setScope(scope.getType()); beanDefinition.setAutowireCandidate(true); registry.registerBeanDefinition(id, beanDefinition); factory.autowireBeanProperties(this, AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, false); return getBean(id); }
From source file:com.github.steveash.spring.WiringFactoryBeanFactoryPostProcessor.java
private void addPrototypeDef(ConfigurableListableBeanFactory beanFactory, String beanDefName, Class<?> protoBeanClass) { String beanName = getPrototypeBeanNameFromBeanClass(protoBeanClass); if (beanFactory.containsBeanDefinition(beanName)) { throw new BeanDefinitionValidationException("Trying to register a bean definition for a synthetic " + "prototype bean with name " + beanName + " due to the bean factory of name " + beanDefName + " but a bean with this name already exists!"); }/*from w w w.ja va 2s. co m*/ GenericBeanDefinition protoBean = new GenericBeanDefinition(); protoBean.setLazyInit(true); protoBean.setBeanClass(protoBeanClass); protoBean.setScope(BeanDefinition.SCOPE_PROTOTYPE); protoBean.setAutowireMode(AbstractBeanDefinition.AUTOWIRE_CONSTRUCTOR); protoBean.setBeanClassName(protoBeanClass.getName()); log.debug("Dynamically adding prototype bean {} from factory {}", beanName, beanDefName); BeanDefinitionRegistry registry = (BeanDefinitionRegistry) beanFactory; registry.registerBeanDefinition(beanName, protoBean); }
From source file:org.jacpfx.spring.launcher.SpringJavaConfigLauncher.java
@Override public <P> P registerAndGetBean(Class<? extends P> type, String id, Scope scope) { if (contains(id)) return getBean(id); final GenericBeanDefinition beanDefinition = new GenericBeanDefinition(); beanDefinition.setBeanClass(type);//www . jav a 2 s . c om if (scope != null) beanDefinition.setScope(scope.getType()); beanDefinition.setAutowireCandidate(true); lock.writeLock().lock(); try { final AutowireCapableBeanFactory factory = getContext().getAutowireCapableBeanFactory(); final BeanDefinitionRegistry registry = (BeanDefinitionRegistry) factory; registry.registerBeanDefinition(id, beanDefinition); factory.autowireBeanProperties(this, AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, false); } finally { lock.writeLock().unlock(); } return getBean(id); }
From source file:pl.chilldev.web.spring.config.HandlePageModelBeanDefinitionParser.java
/** * {@inheritDoc}/* w w w.j a va2s.c o m*/ * @since 0.0.1 */ @Override public BeanDefinition parse(Element element, ParserContext parserContext) { // page model bean prototype GenericBeanDefinition pageMetaModelBean = new GenericBeanDefinition(); pageMetaModelBean.setBeanClass(PageMetaModel.class); pageMetaModelBean.setScope(WebApplicationContext.SCOPE_REQUEST); pageMetaModelBean.setFactoryBeanName(PageMetaModelFactoryBean.class.getName()); pageMetaModelBean.setFactoryMethodName(HandlePageModelBeanDefinitionParser.METHOD_CREATEPAGEMETAMODEL); parserContext.getRegistry().registerBeanDefinition(PageMetaModel.class.getName(), pageMetaModelBean); parserContext.getRegistry().registerBeanDefinition(PageMetaModelFactoryBean.class.getName(), this.pageMetaModelFactoryBean); // XHTML switch needs to be handled with generator bean if (element.hasAttribute(HandlePageModelBeanDefinitionParser.ATTRIBUTE_XHTML)) { boolean xhtml = element.getAttribute(HandlePageModelBeanDefinitionParser.ATTRIBUTE_XHTML) .equals("true"); GenericBeanDefinition generatorBean = new GenericBeanDefinition(); generatorBean.setBeanClass(Generator.class); this.logger.info("Setting markup generator XHTML mode to {}.", xhtml); ConstructorArgumentValues arguments = generatorBean.getConstructorArgumentValues(); arguments.addGenericArgumentValue(xhtml); parserContext.getRegistry().registerBeanDefinition(Generator.class.getName(), generatorBean); arguments = pageMetaModelBean.getConstructorArgumentValues(); arguments.addGenericArgumentValue(new RuntimeBeanReference(Generator.class.getName())); } // register new resolving strategy PageMetaModelContextUtils.setPageMetaModelResolver(new SpringBeansJspPageMetaModelResolver()); pl.chilldev.web.faces.context.PageMetaModelContextUtils .setPageMetaModelResolver(new SpringBeansFacesPageMetaModelResolver()); return null; }
From source file:guru.qas.martini.annotation.StepsAnnotationProcessorTest.java
@Test(expectedExceptions = FatalBeanException.class) public void testNonSingletonSteps() { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("emptyContext.xml"); ConfigurableListableBeanFactory factory = context.getBeanFactory(); GenericBeanDefinition definition = new GenericBeanDefinition(); definition.setBeanClass(DuplicateGivenBeanA.class); definition.setLazyInit(false);//w w w .ja va2 s .c o m definition.setScope("prototype"); BeanDefinitionRegistry registry = BeanDefinitionRegistry.class.cast(factory); registry.registerBeanDefinition(DuplicateGivenBeanA.class.getName(), definition); process(context, new DuplicateGivenBeanA()); }