@Test public void testExplicitScopeInheritanceForChildBeanDefinitions() { String theChildScope = "bonanza!"; RootBeanDefinition parent = new RootBeanDefinition(); parent.setScope(RootBeanDefinition.SCOPE_PROTOTYPE); AbstractBeanDefinition child = BeanDefinitionBuilder.childBeanDefinition("parent").getBeanDefinition(); child.setBeanClass(TestBean.class); child.setScope(theChildScope); DefaultListableBeanFactory factory = new DefaultListableBeanFactory(); factory.registerBeanDefinition("parent", parent); factory.registerBeanDefinition("child", child); AbstractBeanDefinition def = (AbstractBeanDefinition) factory.getBeanDefinition("child"); assertEquals("Child 'scope' not overriding parent scope (it must).", theChildScope, def.getScope()); }
protected BeanDefinition processHiddenControlElement( Element ele ) { BeanDefinitionBuilder controlBean = BeanDefinitionBuilder.childBeanDefinition( "HiddenControlDefinition" ); parseEmbeddedPropertyElements(ele, controlBean); return controlBean.getBeanDefinition(); }
protected BeanDefinition processTextControlElement( Element ele ) { BeanDefinitionBuilder controlBean = BeanDefinitionBuilder.childBeanDefinition( "TextControlDefinition" ); String size = ele.getAttribute("size"); if ( StringUtils.hasText(size) ) { controlBean.addPropertyValue("size", Integer.valueOf(size) ); } parseEmbeddedPropertyElements(ele, controlBean); return controlBean.getBeanDefinition(); }
protected BeanDefinition processCheckboxControlElement( Element ele ) { BeanDefinitionBuilder controlBean = BeanDefinitionBuilder.childBeanDefinition( "CheckboxControlDefinition" ); parseEmbeddedPropertyElements(ele, controlBean); return controlBean.getBeanDefinition(); }
protected BeanDefinition processTextareaControlElement( Element ele ) { BeanDefinitionBuilder controlBean = BeanDefinitionBuilder.childBeanDefinition( "TextareaControlDefinition" ); String rows = ele.getAttribute("rows"); if ( StringUtils.hasText(rows) ) { controlBean.addPropertyValue("rows", Integer.valueOf(rows) ); } String cols = ele.getAttribute("rows"); if ( StringUtils.hasText(cols) ) { controlBean.addPropertyValue("cols", Integer.valueOf(cols) ); } parseEmbeddedPropertyElements(ele, controlBean); return controlBean.getBeanDefinition(); }
private BeanDefinitionBuilder parsePlugin(final Element element) { assert element != null; log.trace("Parse plugin; element: {}", element); BeanDefinitionBuilder plugin = BeanDefinitionBuilder.childBeanDefinition(PLUGIN_TEMPLATE); String name = element.getAttribute(NAME); plugin.addConstructorArgValue(name); // // FIXME: Give the Plugin bean a more meaningful ID, need to stop using AbstractBeanDefinitionParser to do this. // // String id = Plugin.class.getName() + "#" + name; // plugin.addPropertyValue(ID, id); parseAndApplyDescription(element, plugin); return plugin; }
protected BeanDefinition processUserControlElement( Element ele ) { BeanDefinitionBuilder controlBean = BeanDefinitionBuilder.childBeanDefinition( "KualiUserControlDefinition" ); String universalIdAttribute = ele.getAttribute("universalIdAttribute"); if ( StringUtils.hasText(universalIdAttribute) ) { controlBean.addPropertyValue("universalIdAttributeName", universalIdAttribute ); } String userObjectAttribute = ele.getAttribute("userObjectAttribute"); if ( StringUtils.hasText(userObjectAttribute) ) { controlBean.addPropertyValue("userIdAttributeName", userObjectAttribute + "." + KFSPropertyConstants.PERSON_USER_ID ); controlBean.addPropertyValue("personNameAttributeName", userObjectAttribute + "." + KFSPropertyConstants.PERSON_NAME ); } parseEmbeddedPropertyElements(ele, controlBean); return controlBean.getBeanDefinition(); }
private void createBeanDefinition(Class ctrl, String parent) { String id = ctrl.getName(); BeanDefinitionBuilder rootBuilder = BeanDefinitionBuilder .childBeanDefinition(parent); rootBuilder.getBeanDefinition().setBeanClass(ctrl); if(logger.isDebugEnabled()){ logger.debug("registering bean definition: " + rootBuilder.getBeanDefinition().toString()); } //logger.info("registering bean definition: " + rootBuilder.getBeanDefinition().toString()); registry.registerBeanDefinition(id, rootBuilder.getBeanDefinition()); } }
/** * @see org.springframework.beans.factory.xml.BeanDefinitionParser#parse(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext) */ public BeanDefinition parse(Element element, ParserContext parserContext) { BeanDefinitionBuilder beanDefinition; String beanReference = element.getAttribute("reference"); if (StringUtils.hasText(beanReference)) { beanDefinition = BeanDefinitionBuilder.childBeanDefinition(beanReference); DescriptionElementParser.doParse(element, beanDefinition); beanDefinition.addPropertyValue("name", element.getLocalName() + ":" + beanReference); return beanDefinition.getBeanDefinition(); } else { throw new BeanCreationException("Must specify proper reference attribute to bean"); } } }
protected BeanDefinition processValidationPatternElement( Element ele ) { BeanDefinitionBuilder validatorBean = null; String parent = ele.getAttribute( "parent" ); String validationPatternClass = ele.getAttribute( "validationPatternClass" ); if ( StringUtils.hasText(parent) ) { validatorBean = BeanDefinitionBuilder.childBeanDefinition( parent ); } else if ( StringUtils.hasText(validationPatternClass)) { try { validatorBean = BeanDefinitionBuilder.rootBeanDefinition(Class.forName(validationPatternClass)); } catch ( ClassNotFoundException ex ) { LOG.fatal( "Invalid class name given for validationPattern bean: " + validationPatternClass ); throw new RuntimeException( "Invalid class name given for validationPattern bean: " + validationPatternClass, ex ); } } parseEmbeddedPropertyElements(ele, validatorBean); return validatorBean.getBeanDefinition(); } }
protected BeanDefinition processSelectControlElement( Element ele ) { BeanDefinitionBuilder controlBean = BeanDefinitionBuilder.childBeanDefinition( "SelectControlDefinition" ); setMultiValueControlAttributes( ele, controlBean ); parseEmbeddedPropertyElements(ele, controlBean); return controlBean.getBeanDefinition(); }
protected BeanDefinition processRadioControlElement( Element ele ) { BeanDefinitionBuilder controlBean = BeanDefinitionBuilder.childBeanDefinition( "RadioControlDefinition" ); setMultiValueControlAttributes( ele, controlBean ); parseEmbeddedPropertyElements(ele, controlBean); return controlBean.getBeanDefinition(); }
channelNames.add(channelName); } else if (StringUtils.hasText(channelRef)) { channelRefs.add(BeanDefinitionBuilder.childBeanDefinition(channelRef).getBeanDefinition()); } else { throw new BeanCreationException("Element 'channel' must set one of the attributes 'name' or 'ref'");
beanDefinition = BeanDefinitionBuilder.childBeanDefinition(templateName); beanDefinition.addPropertyValue("name", element.getLocalName() + ":" + templateName);
endpointNames.add(endpointName); } else if (StringUtils.hasText(endpointRef)) { endpointRefs.add(BeanDefinitionBuilder.childBeanDefinition(endpointRef).getBeanDefinition()); } else { throw new BeanCreationException("Element 'endpoint' must set one of the attributes 'name' or 'ref'");
queueNames.add(queueName); } else if (StringUtils.hasText(queueRef)) { queueRefs.add(BeanDefinitionBuilder.childBeanDefinition(queueRef).getBeanDefinition()); } else { throw new BeanCreationException("Element 'queue' must set one of the attributes 'name' or 'ref'");
builder = BeanDefinitionBuilder.childBeanDefinition(parent); } else if ( getBeanClass(element) != null ) { builder = BeanDefinitionBuilder.rootBeanDefinition(getBeanClass(element)); } else { builder = BeanDefinitionBuilder.childBeanDefinition(getBaseBeanTypeParent(element));
unitBeanDefBuilder = BeanDefinitionBuilder.childBeanDefinition(unitExtends); unitBeanDefBuilder.getRawBeanDefinition().setBeanClass(ConfigurationUnit.class); requiredCapabilityReferences.setMergeEnabled(true);
BeanDefinitionBuilder command = BeanDefinitionBuilder.childBeanDefinition(type.getTemplateName()); parseAndApplyDescription(element, command);
BeanDefinitionBuilder command = BeanDefinitionBuilder.childBeanDefinition(type.getTemplateName()); parseAndApplyDescription(element, command);