List of usage examples for org.springframework.beans.factory.config BeanDefinition setBeanClassName
void setBeanClassName(@Nullable String beanClassName);
From source file:com.art4ul.loadinstead.bean.LoadInsteadBeanFactoryPostProcessor.java
@Override public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { ClassMapper mapper;//w w w . java2s . c o m try { mapper = ClassMapper.load(loadInstedPacks); } catch (IOException e) { throw new LoadClassMapperException("Exception in process of loading classes to replace", e); } for (String beanName : beanFactory.getBeanDefinitionNames()) { Class<?> beanClass = beanFactory.getType(beanName); Class<?> classToReplace = mapper.getClassToReplace(beanClass); if (classToReplace != null) { BeanDefinition beanDefinition = beanFactory.getBeanDefinition(beanName); if (beanDefinition != null) { beanDefinition.setBeanClassName(classToReplace.getName()); } } } }
From source file:org.bigtester.ate.xmlschema.BaseTestStepBeanDefinitionParser.java
/** * {@inheritDoc}//from ww w .j av a2 s .c o m */ @Override protected AbstractBeanDefinition parseInternal(@Nullable Element element, @Nullable ParserContext parserContext) { // Here we parse the Spring elements such as < property> if (parserContext == null || element == null) throw GlobalUtils.createNotInitializedException("element and parserContext"); BeanDefinitionHolder holder = parserContext.getDelegate().parseBeanDefinitionElement(element); BeanDefinition bDef = holder.getBeanDefinition(); bDef.setBeanClassName(BaseTestStep.class.getName()); String pageObject = element.getAttribute(XsdElementConstants.ATTR_BASETESTSTEP_PAGEOBJECT); if (StringUtils.hasText(pageObject)) { bDef.getConstructorArgumentValues().addGenericArgumentValue(new RuntimeBeanReference(pageObject)); } String myWebElement = element.getAttribute(XsdElementConstants.ATTR_BASETESTSTEP_MYWEBELEMENT); if (StringUtils.hasText(myWebElement)) { bDef.getConstructorArgumentValues().addGenericArgumentValue(new RuntimeBeanReference(myWebElement)); } String ead = element.getAttribute(XsdElementConstants.ATTR_ELEMENTSTEP_ELEMENTACTIONDEF); if (StringUtils.hasText(ead)) { bDef.getConstructorArgumentValues().addGenericArgumentValue(new RuntimeBeanReference(ead)); } boolean target = Boolean.parseBoolean(element.getAttribute(XsdElementConstants.ATTR_TESTSTEP_TARGETSTEP)); bDef.getPropertyValues().addPropertyValue(XsdElementConstants.ATTR_TESTSTEP_TARGETSTEP, target); boolean optional; if (target) { optional = false; } else { optional = Boolean.parseBoolean(element.getAttribute(XsdElementConstants.ATTR_TESTSTEP_OPTIONALSTEP)); String optionalStepUntilInclusive = element .getAttribute(XsdElementConstants.ATTR_TESTSTEP_CORRELATEDOPTIONALSTEPSUTILINCLUSIVE); bDef.getPropertyValues().addPropertyValue( XsdElementConstants.ATTR_TESTSTEP_CORRELATEDOPTIONALSTEPSUTILINCLUSIVE, optionalStepUntilInclusive); } bDef.getPropertyValues().addPropertyValue(XsdElementConstants.ATTR_TESTSTEP_OPTIONALSTEP, optional); String stepName = element.getAttribute(XsdElementConstants.ATTR_TESTSTEP_STEPNAME); bDef.getPropertyValues().addPropertyValue(XsdElementConstants.ATTR_TESTSTEP_STEPNAME, stepName); String stepDesc = element.getAttribute(XsdElementConstants.ATTR_TESTSTEP_STEPDESCRIPTION); bDef.getPropertyValues().addPropertyValue(XsdElementConstants.ATTR_TESTSTEP_STEPDESCRIPTION, stepDesc); bDef.getPropertyValues().addPropertyValue("repeatStepLogger", new RuntimeBeanReference(GlobalConstants.BEAN_ID_REPEATSTEPEXECUTIONLOGGER)); String testcaseParentName = element.getParentNode().getAttributes().getNamedItem("id").getNodeValue(); bDef.getConstructorArgumentValues().addGenericArgumentValue(new RuntimeBeanReference(testcaseParentName)); // String text = element.getAttribute("text"); // bd.getPropertyValues().addPropertyValue("text", text); parserContext.getRegistry().registerBeanDefinition(element.getAttribute("id"), bDef); return (AbstractBeanDefinition) bDef; }
From source file:com.apporiented.spring.override.BeanOverrideProcessor.java
private void overwriteBeanDefinition(BeanDefinition target, BeanDefinition source) { log.debug("Replacing bean [" + ref + "] with a [" + source.getBeanClassName() + "]"); target.setBeanClassName(source.getBeanClassName()); ConstructorArgumentValues cas = target.getConstructorArgumentValues(); cas.clear();/*from www . j ava 2 s .c om*/ cas.addArgumentValues(source.getConstructorArgumentValues()); MutablePropertyValues pvs = target.getPropertyValues(); if (!merge) { pvs.getPropertyValueList().clear(); } pvs.addPropertyValues(source.getPropertyValues()); }
From source file:org.bigtester.ate.xmlschema.FindByXpathBeanDefinitionParser.java
/** * {@inheritDoc}/*w ww .ja v a 2s .c o m*/ */ @Override protected @Nullable AbstractBeanDefinition parseInternal(@Nullable Element element, @Nullable ParserContext parserContext) { // Here we parse the Spring elements such as < property> if (parserContext == null || element == null) throw GlobalUtils.createNotInitializedException("element and parserContext"); // this will never be null since the schema explicitly requires that a value be supplied //BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition(ElementFindByXpath.class); BeanDefinition bDef = super.parseInternal(element, parserContext); if (null == bDef) throw GlobalUtils.createNotInitializedException("elementfinderbaseBean"); bDef.setBeanClassName(ElementFindByXpath.class.getName()); // String findbyValue = element.getAttribute(XsdElementConstants.ATTR_GENERICELEMENTFIND_FINDBYVALUE); // if (StringUtils.hasText(findbyValue)) // factory.addConstructorArgValue(findbyValue); // // String strIndex = element.getAttribute(XsdElementConstants.ATTR_GENERICELEMENTFIND_INDEXOFSAMEELEMENTS); // if (StringUtils.hasText(strIndex)) { // factory.addPropertyValue(XsdElementConstants.ATTR_GENERICELEMENTFIND_INDEXOFSAMEELEMENTS, Integer.parseInt(strIndex)); // } else { // factory.addPropertyValue(XsdElementConstants.ATTR_GENERICELEMENTFIND_INDEXOFSAMEELEMENTS, 0); // } return (AbstractBeanDefinition) bDef; }
From source file:org.bigtester.ate.xmlschema.ElementStepBeanDefinitionParser.java
/** * {@inheritDoc}//from w w w . jav a2 s. c om */ @Override protected AbstractBeanDefinition parseInternal(@Nullable Element element, @Nullable ParserContext parserContext) { // Here we parse the Spring elements such as < property> if (parserContext == null || element == null) throw GlobalUtils.createNotInitializedException("element and parserContext"); // Here we parse the Spring elements such as < property> // BeanDefinitionHolder holder = parserContext.getDelegate() // .parseBeanDefinitionElement(element); BeanDefinition bDef = super.parseInternal(element, parserContext); bDef.setBeanClassName(ElementTestStep.class.getName()); // String pageObject = element // .getAttribute(XsdElementConstants.ATTR_BASETESTSTEP_PAGEOBJECT); // if (StringUtils.hasText(pageObject)) { // bDef.getConstructorArgumentValues().addGenericArgumentValue( // new RuntimeBeanReference(pageObject)); // } // String myWE = element // .getAttribute(XsdElementConstants.ATTR_ELEMENTSTEP_MYWEBELEMENT); // if (StringUtils.hasText(myWE)) { // bDef.getConstructorArgumentValues().addGenericArgumentValue( // new RuntimeBeanReference(myWE)); // } // String ead = element // .getAttribute(XsdElementConstants.ATTR_ELEMENTSTEP_ELEMENTACTIONDEF); // if (StringUtils.hasText(ead)) { // bDef.getConstructorArgumentValues().addGenericArgumentValue( // new RuntimeBeanReference(ead)); // } // // // boolean target = Boolean.parseBoolean(element // .getAttribute(XsdElementConstants.ATTR_TESTSTEP_TARGETSTEP)); // bDef.getPropertyValues().addPropertyValue( // XsdElementConstants.ATTR_TESTSTEP_TARGETSTEP, target); // // String stepName = element // .getAttribute(XsdElementConstants.ATTR_TESTSTEP_STEPNAME); // bDef.getPropertyValues().addPropertyValue( // XsdElementConstants.ATTR_TESTSTEP_STEPNAME, stepName); // // String stepDesc = element // .getAttribute(XsdElementConstants.ATTR_TESTSTEP_STEPDESCRIPTION); // bDef.getPropertyValues().addPropertyValue( // XsdElementConstants.ATTR_TESTSTEP_STEPDESCRIPTION, stepDesc); parserContext.getRegistry().registerBeanDefinition(element.getAttribute("id"), bDef); return (AbstractBeanDefinition) bDef; // this will never be null since the schema explicitly requires that a // value be supplied // String myWE = // element.getAttribute(XsdElementConstants.ATTR_ELEMENTSTEP_MYWEBELEMENT); // BeanDefinitionBuilder factory = // BeanDefinitionBuilder.rootBeanDefinition(ElementTestStep.class); // if (StringUtils.hasText(myWE)) // factory.addConstructorArgReference(myWE); // // boolean target = // Boolean.parseBoolean(element.getAttribute(XsdElementConstants.ATTR_TESTSTEP_TARGETSTEP)); // factory.addPropertyValue(XsdElementConstants.ATTR_TESTSTEP_TARGETSTEP, // target); // // String stepName = // element.getAttribute(XsdElementConstants.ATTR_TESTSTEP_STEPNAME); // if (StringUtils.hasText(stepName)) // factory.addPropertyValue(XsdElementConstants.ATTR_TESTSTEP_STEPNAME, // stepName); // // String stepDesc = // element.getAttribute(XsdElementConstants.ATTR_TESTSTEP_STEPDESCRIPTION); // if (StringUtils.hasText(stepDesc)) // factory.addPropertyValue(XsdElementConstants.ATTR_TESTSTEP_STEPDESCRIPTION, // stepDesc); // // factory.getBeanDefinition().setBeanClassName(ElementTestStep.class.getName()); // parserContext.getRegistry().registerBeanDefinition(element.getAttribute("id"), // factory.getBeanDefinition()); // return factory.getBeanDefinition(); }
From source file:biz.c24.io.spring.batch.config.ItemWriterParser.java
@Override protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder bean) { // Optional//from w ww.ja v a 2 s . c o m String scope = element.getAttribute("scope"); if (StringUtils.hasText(scope)) { bean.setScope(scope); } else { // Default to step scope bean.setScope("step"); } // Mandatory String sinkRef = element.getAttribute("sink-ref"); bean.addPropertyReference("sink", sinkRef); int numSourceDefns = 0; // Optional String writerSourceRef = element.getAttribute("writer-source-ref"); if (StringUtils.hasText(writerSourceRef)) { bean.addPropertyReference("writerSource", writerSourceRef); numSourceDefns++; } Element fileSourceElement = DomUtils.getChildElementByTagName(element, "file-writer"); if (fileSourceElement != null) { BeanDefinition beanDefinition = parserContext.getDelegate().parseCustomElement(fileSourceElement, bean.getBeanDefinition()); beanDefinition.setBeanClassName(FileWriterSource.class.getName()); bean.addPropertyValue("writerSource", beanDefinition); numSourceDefns++; } Element zipFileSourceElement = DomUtils.getChildElementByTagName(element, "zip-file-writer"); if (zipFileSourceElement != null) { BeanDefinition beanDefinition = parserContext.getDelegate().parseCustomElement(zipFileSourceElement, bean.getBeanDefinition()); beanDefinition.setBeanClassName(ZipFileWriterSource.class.getName()); bean.addPropertyValue("writerSource", beanDefinition); numSourceDefns++; } if (numSourceDefns > 1) { parserContext.getReaderContext() .error("Only one of writer-source-ref, file-writer and zip-file-writer can be used", element); } else if (numSourceDefns == 0) { parserContext.getReaderContext() .error("One of writer-source-ref, file-writer and zip-file-writer must be specified", element); } }
From source file:biz.c24.io.spring.batch.config.ItemReaderParser.java
@Override protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder bean) { // Optional//from w w w. j a v a2s . c o m String scope = element.getAttribute("scope"); if (StringUtils.hasText(scope)) { bean.setScope(scope); } else { // Default to step scope bean.setScope("step"); } int numSourceDefns = 0; // Optional String sourceRef = element.getAttribute("source-ref"); if (StringUtils.hasText(sourceRef)) { bean.addPropertyReference("source", sourceRef); numSourceDefns++; } // Mandatory String modelRef = element.getAttribute("model-ref"); bean.addPropertyReference("model", modelRef); // Optional String elementStartPattern = element.getAttribute("elementStartPattern"); if (StringUtils.hasText(elementStartPattern)) { bean.addPropertyValue("elementStartPattern", elementStartPattern); } // Optional String elementStopPattern = element.getAttribute("elementStopPattern"); if (StringUtils.hasText(elementStopPattern)) { bean.addPropertyValue("elementStopPattern", elementStopPattern); } // Optional String validate = element.getAttribute("validate"); if (StringUtils.hasText(validate)) { bean.addPropertyValue("validate", validate); //don't evaluate as a boolean until Bean creation time to allow for SpEL } // Optional String failfast = element.getAttribute("failfast"); if (StringUtils.hasText(failfast)) { boolean val = Boolean.parseBoolean(failfast); bean.addPropertyValue("failfast", val); } // Optional String sourceFactoryRef = element.getAttribute("source-factory-ref"); if (StringUtils.hasText(sourceFactoryRef)) { bean.addPropertyReference("sourceFactory", sourceFactoryRef); } // Optional String parseListenerRef = element.getAttribute("parse-listener-ref"); if (StringUtils.hasText(parseListenerRef)) { bean.addPropertyReference("parseListener", parseListenerRef); } Element fileSourceElement = DomUtils.getChildElementByTagName(element, "file-source"); if (fileSourceElement != null) { BeanDefinition beanDefinition = parserContext.getDelegate().parseCustomElement(fileSourceElement, bean.getBeanDefinition()); beanDefinition.setBeanClassName(FileSource.class.getName()); bean.addPropertyValue("source", beanDefinition); numSourceDefns++; } Element zipFileSourceElement = DomUtils.getChildElementByTagName(element, "zip-file-source"); if (zipFileSourceElement != null) { BeanDefinition beanDefinition = parserContext.getDelegate().parseCustomElement(zipFileSourceElement, bean.getBeanDefinition()); beanDefinition.setBeanClassName(ZipFileSource.class.getName()); bean.addPropertyValue("source", beanDefinition); numSourceDefns++; } if (numSourceDefns > 1) { parserContext.getReaderContext() .error("Only one of source-ref, file-source and zip-file-source can be used", element); } else if (numSourceDefns == 0) { parserContext.getReaderContext() .error("One of source-ref, file-source and zip-file-source must be specified", element); } }
From source file:org.bigtester.ate.xmlschema.RunTimeDataHolderBeanDefinitionParser.java
/** * {@inheritDoc}//from www . j a va2 s .c o m */ @Override protected @Nullable AbstractBeanDefinition parseInternal(@Nullable Element element, @Nullable ParserContext parserContext) { // Here we parse the Spring elements such as < property> if (parserContext == null || element == null) throw GlobalUtils.createNotInitializedException("element and parserContext"); // Here we parse the Spring elements such as < property> String dataHolderType = element.getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_DATAHOLDERTYPE) .toUpperCase(); if (null == dataHolderType || !StringUtils.hasText(dataHolderType)) { throw GlobalUtils.createNotInitializedException("dataHolderType attribute in xml test case"); } RumtimeDataHolderType enumDataHolderType = RumtimeDataHolderType.valueOf(dataHolderType); BeanDefinitionHolder holder = parserContext.getDelegate().parseBeanDefinitionElement(element); BeanDefinition bDef = holder.getBeanDefinition(); switch (enumDataHolderType) { case PAGESOURCEPARSED: bDef.setBeanClassName(PageParsedDataHolder.class.getName()); break; case MANUALASSIGNED: bDef.setBeanClassName(ManualAssignedValueDataHolder.class.getName()); break; case CASESERVICEPARSED: bDef.setBeanClassName(CaseServiceParsedDataHolder.class.getName()); break; case STEPSERVICEPARSED: bDef.setBeanClassName(StepServiceParsedDataHolder.class.getName()); break; case RANDOMALPHATEXT: bDef.setBeanClassName(RandomAlphaTextValueDataHolder.class.getName()); break; case RANDOMNUMBERS: bDef.setBeanClassName(RandomNumericValueDataHolder.class.getName()); break; case RANDOMTEXTNUMBERS: bDef.setBeanClassName(RandomAlphaNumericValueDataHolder.class.getName()); break; case RANDOMEMAIL: bDef.setBeanClassName(RandomEmailDataHolder.class.getName()); break; default: break; } String dataType = element.getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_DATATYPE).toUpperCase(); if (null != dataType && StringUtils.hasText(dataType)) { EnumRunTimeDataType enumDataType = EnumRunTimeDataType.valueOf(dataType); bDef.getConstructorArgumentValues().addGenericArgumentValue(enumDataType); } String dataValue = element.getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_DATAVALUE); if (StringUtils.hasText(dataValue)) { bDef.getConstructorArgumentValues().addGenericArgumentValue(dataValue); } String leftBoundry = element.getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_LEFTBOUNDRY); if (StringUtils.hasText(leftBoundry)) { bDef.getConstructorArgumentValues().addGenericArgumentValue(leftBoundry); } String rightBoundry = element.getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_RIGHTBOUNDRY); if (StringUtils.hasText(rightBoundry)) { bDef.getConstructorArgumentValues().addGenericArgumentValue(rightBoundry); } String page = element.getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_PAGE); if (StringUtils.hasText(page)) { bDef.getConstructorArgumentValues().addGenericArgumentValue(new RuntimeBeanReference(page)); } String beanID = element.getAttribute("id"); bDef.getConstructorArgumentValues().addGenericArgumentValue(beanID); String mappedBeanID = element .getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_SUBCASEMAPPEDDATAHOLDERID); if (StringUtils.hasText(mappedBeanID)) { bDef.getConstructorArgumentValues().addGenericArgumentValue(mappedBeanID); } String indexOfSameTypeDataOnPage = element .getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_INDEXOFSAMETYPEDATAONPAGE); if (StringUtils.hasText(indexOfSameTypeDataOnPage)) { int index = Integer.parseInt(indexOfSameTypeDataOnPage); bDef.getConstructorArgumentValues().addGenericArgumentValue(index); } String randomTextLength = element .getAttribute(XsdElementConstants.ATTR_RUNTIMEDATAHOLDER_RANDOMINPUTLENGTH); if (StringUtils.hasText(randomTextLength)) { int length = Integer.parseInt(randomTextLength); bDef.getConstructorArgumentValues().addGenericArgumentValue(length); } parserContext.getRegistry().registerBeanDefinition(element.getAttribute("id"), bDef); return (AbstractBeanDefinition) bDef; }
From source file:de.acosix.alfresco.utility.common.spring.ImplementationClassReplacingBeanFactoryPostProcessor.java
protected void applyChange(final Function<String, BeanDefinition> getBeanDefinition) { final BeanDefinition beanDefinition = getBeanDefinition.apply(this.targetBeanName); if (beanDefinition != null) { if (this.originalClassName == null || this.originalClassName.equals(beanDefinition.getBeanClassName())) { LOGGER.debug("[{}] Patching implementation class Spring bean {} to {}", this.beanName, this.targetBeanName, this.replacementClassName); beanDefinition.setBeanClassName(this.replacementClassName); } else {/* www. j av a2 s.co m*/ LOGGER.info( "[{}] patch will not be applied - class of bean {} does not match expected implementation {}", this.beanName, this.targetBeanName, this.originalClassName); } } else { LOGGER.info("[{}] patch cannot be applied - no bean with name {} has been defined", this.beanName, this.targetBeanName); } }
From source file:com.jaspersoft.jasperserver.api.common.util.spring.BeanDefinitionOverrider.java
protected void overrideDefinition(ConfigurableListableBeanFactory beanFactory) { BeanDefinition originalBean = beanFactory.getBeanDefinition(originalBeanName); BeanDefinition overridingBean = beanFactory.getBeanDefinition(overridingBeanName); if (log.isDebugEnabled()) { log.debug("Overriding " + originalBeanName + " bean definition with " + overridingBeanName); }/*from w ww .j a v a 2 s . c o m*/ if (!originalBean.getBeanClassName().equals(overridingBean.getBeanClassName())) { if (log.isDebugEnabled()) { log.debug("Setting " + originalBeanName + " class name to " + " to " + overridingBean.getBeanClassName()); } originalBean.setBeanClassName(overridingBean.getBeanClassName()); } if (log.isDebugEnabled()) { log.debug("Adding " + overridingBeanName + " properties to " + originalBeanName); } MutablePropertyValues originalProps = originalBean.getPropertyValues(); MutablePropertyValues overridingProps = overridingBean.getPropertyValues(); if (!mergeProperties) { originalProps.getPropertyValueList().clear(); } originalProps.addPropertyValues(overridingProps); }