List of usage examples for org.springframework.beans.factory.support BeanDefinitionBuilder genericBeanDefinition
public static BeanDefinitionBuilder genericBeanDefinition()
From source file:org.codehaus.grepo.core.config.BeanDefinitionParserHelper.java
/** * @param configContext The config context. * @param source The source.//from w w w.j ava 2 s . com * @param defaultGenericRepositoryFactoryType The default generic repository factory class type. * @return Returns the bean definition builder. */ public static BeanDefinitionBuilder createBuilderFromConfigContext(GenericRepositoryConfigContext configContext, Object source, Class<?> defaultGenericRepositoryFactoryType) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(); builder.getRawBeanDefinition().setSource(source); if (!configContext.hasFactory() && !configContext.hasFactoryClass()) { // neither 'factory' nor 'factory-class' attribute is set, so use default bean class... if (defaultGenericRepositoryFactoryType != null) { builder.getRawBeanDefinition().setBeanClass(defaultGenericRepositoryFactoryType); } } else { if (configContext.hasFactory()) { builder.getRawBeanDefinition().setParentName(configContext.getFactory()); } if (configContext.hasFactoryClass()) { builder.getRawBeanDefinition().setBeanClassName(configContext.getFactoryClass()); } } return builder; }
From source file:net.phoenix.thrift.xml.ComplexBeanDefinitionParser.java
@Override protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(); String parentName = getParentName(element); if (parentName != null) { builder.getRawBeanDefinition().setParentName(parentName); }//from w ww. ja v a 2 s . co m Class<?> beanClass = getBeanClass(element); if (beanClass != null) { builder.getRawBeanDefinition().setBeanClass(beanClass); } else { String beanClassName = getBeanClassName(element); if (beanClassName != null) { builder.getRawBeanDefinition().setBeanClassName(beanClassName); } } builder.getRawBeanDefinition().setSource(parserContext.extractSource(element)); if (parserContext.isNested()) { // Inner bean definition must receive same scope as containing bean. builder.setScope(parserContext.getContainingBeanDefinition().getScope()); } if (parserContext.isDefaultLazyInit()) { // Default-lazy-init applies to custom bean definitions as well. builder.setLazyInit(true); } preParse(element, parserContext, builder); AbstractBeanDefinition target = builder.getBeanDefinition(); postParse(element, parserContext, target); return target; }
From source file:org.ff4j.spring.namespace.FF4JPlaceHolderBeanDefinitionParser.java
/** {@inheritDoc} */ public final BeanDefinition parse(Element element, ParserContext parserContext) { logger.debug("Initialization from <ff4j:" + TAG_PLACEHOLDER + "> TAG"); BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(); builder.getRawBeanDefinition().setBeanClass(FF4jPropertiesPlaceHolderConfigurer.class); builder.getRawBeanDefinition().setSource(parserContext.extractSource(element)); // Reference to FF4J bean RuntimeBeanReference refFF4j = new RuntimeBeanReference("ff4j"); builder.getBeanDefinition().getPropertyValues().addPropertyValue("id", BEANID_PLACEHOLDER_CONF); builder.getBeanDefinition().getPropertyValues().addPropertyValue("ff4j", refFF4j); builder.getBeanDefinition().getPropertyValues().addPropertyValue("order", 2); AbstractBeanDefinition def = builder.getBeanDefinition(); if (def != null && !parserContext.isNested()) { BeanDefinitionHolder holder = new BeanDefinitionHolder(def, BEANID_PLACEHOLDER, new String[0]); BeanDefinitionReaderUtils.registerBeanDefinition(holder, parserContext.getRegistry()); }//www. ja v a 2 s . c o m return def; }
From source file:org.codehaus.grepo.core.config.GenericRepositoryFactoryBeanDefinitionParser.java
/** * {@inheritDoc}// ww w. ja v a 2s. c o m */ @Override protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { Object source = parserContext.extractSource(element); GenericRepositoryConfigContext configContext = new GenericRepositoryConfigContext(element); // init bean defintion parse delegate... BeanDefinitionParserDelegate delegate = new BeanDefinitionParserDelegate(parserContext.getReaderContext()); delegate.initDefaults(element.getOwnerDocument().getDocumentElement()); BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition().setAbstract(true); builder.getRawBeanDefinition().setSource(source); if (configContext.hasClazz()) { builder.getRawBeanDefinition().setBeanClassName(configContext.getClazz()); } else { // no 'class' attribute is set, so use default bean class... builder.getRawBeanDefinition().setBeanClass(defaultGenericRepositoryFactoryType); } delegate.parsePropertyElements(element, builder.getRawBeanDefinition()); return builder.getBeanDefinition(); }
From source file:org.jboss.snowdrop.context.support.JBossJcaResourceAdapterParser.java
@Override protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { ClassLoader classLoader = getClass().getClassLoader(); if (classLoader.getClass().getName().startsWith("org.jboss.classloader")) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(); builder.getRawBeanDefinition().setFactoryBeanName(DEFAULT_JBOSS_MBEAN_SERVER_BEAN_NAME); builder.getRawBeanDefinition().setFactoryMethodName(FACTORY_METHOD_NAME); try {//from ww w .j av a 2s. c o m builder.addConstructorArgValue(ObjectName.getInstance(DEFAULT_JCA_MBEAN_NAME)); } catch (MalformedObjectNameException e) { throw new IllegalArgumentException(e); } builder.addConstructorArgValue("ResourceAdapter"); return builder.getBeanDefinition(); } else { BeanDefinitionBuilder builder = BeanDefinitionBuilder .rootBeanDefinition("org.jboss.snowdrop.context.support.ActivatorHolder"); builder.setFactoryMethod("getResourceAdapter"); return builder.getBeanDefinition(); } }
From source file:net.hasor.rsf.spring.parser.RsfDefinitionParser.java
/** ?Xml */ @Override// w w w. ja va 2 s . co m public BeanDefinition parse(Element element, ParserContext parserContext) { // Spring String version = SpringVersion.getVersion(); version = StringUtils.isBlank(version) ? "?" : version; Map customEditors = null; if (version.charAt(0) == '4' || version.charAt(0) == '5') { customEditors = new HashMap<Class<?>, Class<? extends java.beans.PropertyEditor>>(); customEditors.put(InterAddress.class, RsfAddressPropertyEditor.class); } else { customEditors = new HashMap(); customEditors.put("net.hasor.rsf.InterAddress", new RsfAddressPropertyEditor()); } // // . Bean BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(); builder.getRawBeanDefinition().setBeanClass(CustomEditorConfigurer.class); builder.setScope(BeanDefinition.SCOPE_SINGLETON);//? builder.addPropertyValue("customEditors", customEditors); // // .,BeanID net.hasor.rsf.spring.RsfAddressPropertyEditor AbstractBeanDefinition propEditors = builder.getBeanDefinition(); String beanID = RsfAddressPropertyEditor.class.getName(); BeanDefinitionHolder holder = new BeanDefinitionHolder(propEditors, beanID); BeanDefinitionReaderUtils.registerBeanDefinition(holder, parserContext.getRegistry()); parserContext.registerComponent(new BeanComponentDefinition(holder)); // // NamedNodeMap attributes = element.getAttributes(); // return null; }
From source file:io.cloudslang.schema.BeanRegistrator.java
private void reset() { beanName = null; builder = BeanDefinitionBuilder.genericBeanDefinition(); }
From source file:com.tacitknowledge.flip.spring.config.FeatureServiceHandlerParser.java
@Override protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { BeanDefinitionBuilder factoryBuilder = BeanDefinitionBuilder .rootBeanDefinition(FeatureServiceDirectFactory.class); RootBeanDefinition factoryBean = (RootBeanDefinition) factoryBuilder.getBeanDefinition(); parserContext.getRegistry().registerBeanDefinition(FlipSpringAspect.FEATURE_SERVICE_FACTORY_BEAN_NAME, factoryBean);/*from ww w.ja v a 2 s .c o m*/ MutablePropertyValues factoryPropertyValues = new MutablePropertyValues(); factoryBean.setPropertyValues(factoryPropertyValues); String environmentBean = element.getAttribute("environment"); if (environmentBean != null && !environmentBean.isEmpty()) { factoryPropertyValues.addPropertyValue("environment", new RuntimeBeanNameReference(environmentBean)); } Element contextProvidersElement = DomUtils.getChildElementByTagName(element, "context-providers"); if (contextProvidersElement != null) { List contextProvidersList = parserContext.getDelegate().parseListElement(contextProvidersElement, factoryBean); if (contextProvidersList != null && !contextProvidersList.isEmpty()) { factoryPropertyValues.addPropertyValue("contextProviders", contextProvidersList); } } Element propertyReadersElement = DomUtils.getChildElementByTagName(element, "property-readers"); if (propertyReadersElement != null && propertyReadersElement.hasChildNodes()) { List propertyReadersList = parserContext.getDelegate().parseListElement(propertyReadersElement, factoryBean); if (propertyReadersList != null && !propertyReadersList.isEmpty()) { factoryPropertyValues.addPropertyValue("propertyReaders", propertyReadersList); } } Element propertiesElement = DomUtils.getChildElementByTagName(element, "properties"); if (propertiesElement != null && propertiesElement.hasChildNodes()) { Properties properties = parserContext.getDelegate().parsePropsElement(propertiesElement); if (properties != null && !properties.isEmpty()) { factoryPropertyValues.addPropertyValue("properties", properties); } } BeanDefinitionBuilder featureServiceBuilder = BeanDefinitionBuilder.genericBeanDefinition(); BeanDefinition featureServiceRawBean = featureServiceBuilder.getRawBeanDefinition(); featureServiceRawBean.setFactoryBeanName(FlipSpringAspect.FEATURE_SERVICE_FACTORY_BEAN_NAME); featureServiceRawBean.setFactoryMethodName("createFeatureService"); parserContext.getRegistry().registerBeanDefinition(FlipSpringAspect.FEATURE_SERVICE_BEAN_NAME, featureServiceBuilder.getBeanDefinition()); return null; }
From source file:org.springframework.data.jdbc.config.oracle.PoolingDataSourceBeanDefinitionParser.java
protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { //ToDo look for username-connection-proxy boolean useWrapper = false; String connectionContextProviderRef = null; Element usernameConnectionProxyElement = DomUtils.getChildElementByTagName(element, USERNAME_CONNECTION_PROXY);//from www . j ava2 s . c o m if (usernameConnectionProxyElement != null) { if (logger.isDebugEnabled()) { logger.debug("Using username-connection-proxy"); } if (usernameConnectionProxyElement.hasAttribute(CONNECTION_CONTEXT_PROVIDER)) { if (logger.isDebugEnabled()) { logger.debug(CONNECTION_CONTEXT_PROVIDER + ": " + usernameConnectionProxyElement.getAttribute(CONNECTION_CONTEXT_PROVIDER)); } connectionContextProviderRef = usernameConnectionProxyElement .getAttribute(CONNECTION_CONTEXT_PROVIDER); } useWrapper = true; //builder.addPropertyValue("connectionProperties", connProperties); } BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(); builder.getRawBeanDefinition().setBeanClassName(getBeanClassName(element)); builder.getRawBeanDefinition().setSource(parserContext.extractSource(element)); builder.getRawBeanDefinition().setDestroyMethodName("close"); if (parserContext.isNested()) { // Inner bean definition must receive same scope as containing bean. builder.setScope(parserContext.getContainingBeanDefinition().getScope()); } if (parserContext.isDefaultLazyInit()) { // Default-lazy-init applies to custom bean definitions as well. builder.setLazyInit(true); } doParse(element, parserContext, builder); if (useWrapper) { BeanDefinitionBuilder wrapper = BeanDefinitionBuilder.genericBeanDefinition(); wrapper.getRawBeanDefinition() .setBeanClassName("org.springframework.data.jdbc.support.oracle.ProxyDataSource"); wrapper.addConstructorArgValue(builder.getBeanDefinition()); if (connectionContextProviderRef == null) { wrapper.addConstructorArgValue(null); } else { wrapper.addConstructorArgReference(connectionContextProviderRef); } return wrapper.getBeanDefinition(); } else { return builder.getBeanDefinition(); } }
From source file:org.springframework.data.jdbc.config.oracle.RacFailoverInterceptorBeanDefinitionParser.java
protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { //attributes//from www .j a v a 2s. c o m List<Integer> recoverableErrorCodesList = new ArrayList<Integer>(); String recoverableErrorCodes = element.getAttribute(RECOVERABLE_ERROR_CODES_ATTRIBUTE); if (StringUtils.hasText(recoverableErrorCodes)) { String[] parsedRecoverableErrorCodes = StringUtils.tokenizeToStringArray(recoverableErrorCodes, ",", true, true); for (int i = 0; i < parsedRecoverableErrorCodes.length; i++) { try { recoverableErrorCodesList.add(new Integer(parsedRecoverableErrorCodes[i])); } catch (NumberFormatException e) { parserContext.getReaderContext().error("Error parsing recoverable error code list: \"" + recoverableErrorCodes + "\"; " + e.getClass().getName() + " - " + e.getMessage(), element); } } if (logger.isDebugEnabled()) { logger.debug( "Using provided " + RECOVERABLE_ERROR_CODES_ATTRIBUTE + ": " + recoverableErrorCodesList); } } String maxNumberOfRetries = element.getAttribute(MAX_NUMBER_OF_RETRIES_ATTRIBUTE); if (logger.isDebugEnabled()) { if (StringUtils.hasText(maxNumberOfRetries)) { logger.debug("Using provided " + MAX_NUMBER_OF_RETRIES_ATTRIBUTE + ": " + maxNumberOfRetries); } } String backOffPolicyRef = null; if (element.hasAttribute(BACK_OFF_POLICY_ATTRIBUTE)) { backOffPolicyRef = element.getAttribute(BACK_OFF_POLICY_ATTRIBUTE); if (logger.isDebugEnabled()) { logger.debug("Using provided " + BACK_OFF_POLICY_ATTRIBUTE + ": " + backOffPolicyRef); } } BeanDefinitionBuilder retryTemplateBuilder = BeanDefinitionBuilder.genericBeanDefinition(); retryTemplateBuilder.getRawBeanDefinition().setBeanClassName(RETRY_TEMPLATE_CLASS); BeanDefinitionBuilder racFailoverRetryPolicyBuilder = BeanDefinitionBuilder.genericBeanDefinition(); racFailoverRetryPolicyBuilder.getRawBeanDefinition().setBeanClassName(RAC_FAILOVER_RETRY_POLICY_CLASS); if (recoverableErrorCodesList.size() > 0) { racFailoverRetryPolicyBuilder.addPropertyValue(RECOVERABLE_ERROR_CODES_PROPERTY, recoverableErrorCodesList); } if (StringUtils.hasText(maxNumberOfRetries)) { racFailoverRetryPolicyBuilder.addPropertyValue(MAX_NUMBER_OF_RETRIES_PROPERTY, maxNumberOfRetries); } retryTemplateBuilder.addPropertyValue(RETRY_POLICY_PROPERTY, racFailoverRetryPolicyBuilder.getRawBeanDefinition()); if (StringUtils.hasText(backOffPolicyRef)) { retryTemplateBuilder.addPropertyReference(BACK_OFF_POLICY_PROPERTY, backOffPolicyRef); } builder.addPropertyValue(RETRY_OPERATIONS_PROPERTY, retryTemplateBuilder.getRawBeanDefinition()); if (logger.isDebugEnabled()) { logger.debug("Using retry policy: " + racFailoverRetryPolicyBuilder.getRawBeanDefinition().getBeanClassName()); } builder.setRole(BeanDefinition.ROLE_SUPPORT); }