List of usage examples for org.springframework.beans.factory.support BeanDefinitionBuilder addPropertyReference
public BeanDefinitionBuilder addPropertyReference(String name, String beanName)
From source file:org.drools.container.spring.namespace.KnowledgeSessionDefinitionParser.java
@SuppressWarnings("unchecked") protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { String id = element.getAttribute("id"); emptyAttributeCheck(element.getLocalName(), "id", id); String kbase = element.getAttribute(KBASE_ATTRIBUTE); emptyAttributeCheck(element.getLocalName(), KBASE_ATTRIBUTE, kbase); String sessionType = element.getAttribute(TYPE_ATTRIBUTE); BeanDefinitionBuilder factory; if ("stateful".equals(sessionType)) { factory = BeanDefinitionBuilder.rootBeanDefinition(StatefulKnowledgeSessionBeanFactory.class); } else if ("stateless".equals(sessionType)) { factory = BeanDefinitionBuilder.rootBeanDefinition(StatelessKnowledgeSessionBeanFactory.class); } else {/*ww w.ja v a 2s . c o m*/ throw new IllegalArgumentException( "Invalid value for " + TYPE_ATTRIBUTE + " attribute: " + sessionType); } factory.addPropertyReference("kbase", kbase); String node = element.getAttribute(GRID_NODE_ATTRIBUTE); if (node != null && node.length() > 0) { factory.addPropertyReference("node", node); } String name = element.getAttribute(NAME_ATTRIBUTE); if (StringUtils.hasText(name)) { factory.addPropertyValue("name", name); } else { factory.addPropertyValue("name", id); } // Additions for JIRA JBRULES-3076 String listeners = element.getAttribute(LISTENERS_ATTRIBUTE); if (StringUtils.hasText(listeners)) { factory.addPropertyValue("eventListenersFromGroup", new RuntimeBeanReference(listeners)); } EventListenersUtil.parseEventListeners(parserContext, factory, element); // End of Additions for JIRA JBRULES-3076 Element ksessionConf = DomUtils.getChildElementByTagName(element, "configuration"); if (ksessionConf != null) { Element persistenceElm = DomUtils.getChildElementByTagName(ksessionConf, "jpa-persistence"); if (persistenceElm != null) { BeanDefinitionBuilder beanBuilder = BeanDefinitionBuilder .genericBeanDefinition(JpaConfiguration.class); String loadId = persistenceElm.getAttribute("load"); if (StringUtils.hasText(loadId)) { beanBuilder.addPropertyValue("id", Long.parseLong(loadId)); } Element tnxMng = DomUtils.getChildElementByTagName(persistenceElm, TX_MANAGER_ATTRIBUTE); String ref = tnxMng.getAttribute("ref"); beanBuilder.addPropertyReference("platformTransactionManager", ref); Element emf = DomUtils.getChildElementByTagName(persistenceElm, EMF_ATTRIBUTE); ref = emf.getAttribute("ref"); beanBuilder.addPropertyReference("entityManagerFactory", ref); Element variablePersisters = DomUtils.getChildElementByTagName(persistenceElm, "variable-persisters"); if (variablePersisters != null && variablePersisters.hasChildNodes()) { List<Element> childPersisterElems = DomUtils.getChildElementsByTagName(variablePersisters, "persister"); ManagedMap persistors = new ManagedMap(childPersisterElems.size()); for (Element persisterElem : childPersisterElems) { String forClass = persisterElem.getAttribute(FORCLASS_ATTRIBUTE); String implementation = persisterElem.getAttribute(IMPLEMENTATION_ATTRIBUTE); if (!StringUtils.hasText(forClass)) { throw new RuntimeException("persister element must have valid for-class attribute"); } if (!StringUtils.hasText(implementation)) { throw new RuntimeException( "persister element must have valid implementation attribute"); } persistors.put(forClass, implementation); } beanBuilder.addPropertyValue("variablePersisters", persistors); } factory.addPropertyValue("jpaConfiguration", beanBuilder.getBeanDefinition()); } BeanDefinitionBuilder rbaseConfBuilder = BeanDefinitionBuilder .rootBeanDefinition(SessionConfiguration.class); Element e = DomUtils.getChildElementByTagName(ksessionConf, KEEP_REFERENCE); if (e != null && StringUtils.hasText(e.getAttribute("enabled"))) { rbaseConfBuilder.addPropertyValue("keepReference", Boolean.parseBoolean(e.getAttribute("enabled"))); } e = DomUtils.getChildElementByTagName(ksessionConf, CLOCK_TYPE); if (e != null && StringUtils.hasText(e.getAttribute("type"))) { rbaseConfBuilder.addPropertyValue("clockType", ClockType.resolveClockType(e.getAttribute("type"))); } factory.addPropertyValue("conf", rbaseConfBuilder.getBeanDefinition()); e = DomUtils.getChildElementByTagName(ksessionConf, WORK_ITEMS); if (e != null) { List<Element> children = DomUtils.getChildElementsByTagName(e, WORK_ITEM); if (children != null && !children.isEmpty()) { ManagedMap workDefs = new ManagedMap(); for (Element child : children) { workDefs.put(child.getAttribute("name"), new RuntimeBeanReference(child.getAttribute("ref"))); } factory.addPropertyValue("workItems", workDefs); } } } Element batch = DomUtils.getChildElementByTagName(element, "batch"); if (batch == null) { // just temporary legacy suppport batch = DomUtils.getChildElementByTagName(element, "script"); } if (batch != null) { // we know there can only ever be one ManagedList children = new ManagedList(); for (int i = 0, length = batch.getChildNodes().getLength(); i < length; i++) { Node n = batch.getChildNodes().item(i); if (n instanceof Element) { Element e = (Element) n; BeanDefinitionBuilder beanBuilder = null; if ("insert-object".equals(e.getLocalName())) { String ref = e.getAttribute("ref"); Element nestedElm = getFirstElement(e.getChildNodes()); beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(InsertObjectCommand.class); if (StringUtils.hasText(ref)) { beanBuilder.addConstructorArgReference(ref); } else if (nestedElm != null) { beanBuilder.addConstructorArgValue( parserContext.getDelegate().parsePropertySubElement(nestedElm, null, null)); } else { throw new IllegalArgumentException( "insert-object must either specify a 'ref' attribute or have a nested bean"); } } else if ("set-global".equals(e.getLocalName())) { String ref = e.getAttribute("ref"); Element nestedElm = getFirstElement(e.getChildNodes()); beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(SetGlobalCommand.class); beanBuilder.addConstructorArgValue(e.getAttribute("identifier")); if (StringUtils.hasText(ref)) { beanBuilder.addConstructorArgReference(ref); } else if (nestedElm != null) { beanBuilder.addConstructorArgValue( parserContext.getDelegate().parsePropertySubElement(nestedElm, null, null)); } else { throw new IllegalArgumentException( "set-global must either specify a 'ref' attribute or have a nested bean"); } } else if ("fire-until-halt".equals(e.getLocalName())) { beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(FireUntilHaltCommand.class); } else if ("fire-all-rules".equals(e.getLocalName())) { beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(FireAllRulesCommand.class); String max = e.getAttribute("max"); if (StringUtils.hasText(max)) { beanBuilder.addPropertyValue("max", max); } } else if ("start-process".equals(e.getLocalName())) { beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(StartProcessCommand.class); String processId = e.getAttribute("process-id"); if (!StringUtils.hasText(processId)) { throw new IllegalArgumentException("start-process must specify a process-id"); } beanBuilder.addConstructorArgValue(processId); List<Element> params = DomUtils.getChildElementsByTagName(e, "parameter"); if (!params.isEmpty()) { ManagedMap map = new ManagedMap(); for (Element param : params) { String identifier = param.getAttribute("identifier"); if (!StringUtils.hasText(identifier)) { throw new IllegalArgumentException( "start-process paramaters must specify an identifier"); } String ref = param.getAttribute("ref"); Element nestedElm = getFirstElement(param.getChildNodes()); if (StringUtils.hasText(ref)) { map.put(identifier, new RuntimeBeanReference(ref)); } else if (nestedElm != null) { map.put(identifier, parserContext.getDelegate() .parsePropertySubElement(nestedElm, null, null)); } else { throw new IllegalArgumentException( "start-process parameters must either specify a 'ref' attribute or have a nested bean"); } } beanBuilder.addPropertyValue("parameters", map); } } else if ("signal-event".equals(e.getLocalName())) { beanBuilder = BeanDefinitionBuilder.genericBeanDefinition(SignalEventCommand.class); String processInstanceId = e.getAttribute("process-instance-id"); if (StringUtils.hasText(processInstanceId)) { beanBuilder.addConstructorArgValue(processInstanceId); } beanBuilder.addConstructorArgValue(e.getAttribute("event-type")); String ref = e.getAttribute("ref"); Element nestedElm = getFirstElement(e.getChildNodes()); if (StringUtils.hasText(ref)) { beanBuilder.addConstructorArgReference(ref); } else if (nestedElm != null) { beanBuilder.addConstructorArgValue( parserContext.getDelegate().parsePropertySubElement(nestedElm, null, null)); } else { throw new IllegalArgumentException( "signal-event must either specify a 'ref' attribute or have a nested bean"); } } if (beanBuilder == null) { throw new IllegalStateException("Unknow element: " + e.getLocalName()); } children.add(beanBuilder.getBeanDefinition()); } } factory.addPropertyValue("batch", children); } // find any kagent's for the current kbase and assign (only if this // is a stateless session) if (sessionType.equals("stateless")) { for (String beanName : parserContext.getRegistry().getBeanDefinitionNames()) { BeanDefinition def = parserContext.getRegistry().getBeanDefinition(beanName); if (KnowledgeAgentBeanFactory.class.getName().equals(def.getBeanClassName())) { PropertyValue pvalue = def.getPropertyValues().getPropertyValue("kbase"); RuntimeBeanReference tbf = (RuntimeBeanReference) pvalue.getValue(); if (kbase.equals(tbf.getBeanName())) { factory.addPropertyValue("knowledgeAgent", new RuntimeBeanReference(beanName)); } } } } return factory.getBeanDefinition(); }
From source file:edu.internet2.middleware.shibboleth.common.config.relyingparty.RelyingPartyConfigurationBeanDefinitionParser.java
/** {@inheritDoc} */ protected void doParse(Element config, ParserContext parserContext, BeanDefinitionBuilder builder) { String rpId = getRelyingPartyId(config); log.info("Parsing configuration for relying party with id: {}", rpId); builder.addPropertyValue("relyingPartyId", rpId); String provider = DatatypeHelper.safeTrimOrNullString(config.getAttributeNS(null, "provider")); log.debug("Relying party configuration - provider ID: {}", provider); builder.addPropertyValue("providerId", provider); String authnMethod = DatatypeHelper .safeTrimOrNullString(config.getAttributeNS(null, "defaultAuthenticationMethod")); log.debug("Relying party configuration - default authentication method: {}", authnMethod); builder.addPropertyValue("defaultAuthenticationMethod", authnMethod); String secCredRef = DatatypeHelper .safeTrimOrNullString(config.getAttributeNS(null, "defaultSigningCredentialRef")); if (secCredRef != null) { log.debug("Relying party configuration - default signing credential: {}", secCredRef); builder.addPropertyReference("defaultSigningCredential", secCredRef); }//from ww w .j a v a 2 s . com Attr precedenceAttr = config.getAttributeNodeNS(null, "nameIDFormatPrecedence"); if (precedenceAttr != null) { List<String> precedence = XMLHelper.getAttributeValueAsList(precedenceAttr); log.debug("Relying party configuration - NameID format precedence: {}", precedence); builder.addPropertyValue("nameIdFormatPrecedence", precedence); } List<Element> profileConfigs = XMLHelper.getChildElementsByTagNameNS(config, RelyingPartyNamespaceHandler.NAMESPACE, "ProfileConfiguration"); if (profileConfigs != null && profileConfigs.size() > 0) { log.debug("Relying party configuration - {} profile configurations", profileConfigs.size()); builder.addPropertyValue("profileConfigurations", SpringConfigurationUtils.parseInnerCustomElements(profileConfigs, parserContext)); } }
From source file:edu.internet2.middleware.shibboleth.common.config.attribute.filtering.AttributeFilterPolicyBeanDefinitionParser.java
/** {@inheritDoc} */ protected void doParse(Element config, ParserContext parserContext, BeanDefinitionBuilder builder) { super.doParse(config, parserContext, builder); String policyId = DatatypeHelper.safeTrimOrNullString(config.getAttributeNS(null, "id")); log.info("Parsing configuration for attribute filter policy {}", policyId); builder.addPropertyValue("policyId", policyId); List<Element> children; Map<QName, List<Element>> childrenMap = XMLHelper.getChildElements(config); children = childrenMap.get(new QName(AttributeFilterNamespaceHandler.NAMESPACE, "PolicyRequirementRule")); if (children != null && children.size() > 0) { builder.addPropertyValue("policyRequirement", SpringConfigurationUtils.parseInnerCustomElement(children.get(0), parserContext)); } else {//from www. j av a2 s .com children = childrenMap .get(new QName(AttributeFilterNamespaceHandler.NAMESPACE, "PolicyRequirementRuleReference")); String reference = getAbsoluteReference(config, "PolicyRequirementRule", children.get(0).getTextContent()); builder.addPropertyReference("policyRequirement", reference); } ManagedList attributeRules = new ManagedList(); children = childrenMap.get(new QName(AttributeFilterNamespaceHandler.NAMESPACE, "AttributeRule")); if (children != null && children.size() > 0) { attributeRules.addAll(SpringConfigurationUtils.parseInnerCustomElements(children, parserContext)); } children = childrenMap.get(new QName(AttributeFilterNamespaceHandler.NAMESPACE, "AttributeRuleReference")); if (children != null && children.size() > 0) { String reference; for (Element child : children) { reference = getAbsoluteReference(config, "AttributeRule", child.getTextContent()); attributeRules.add(new RuntimeBeanReference(reference)); } } builder.addPropertyValue("attributeRules", attributeRules); }
From source file:edu.internet2.middleware.shibboleth.common.config.attribute.filtering.AttributeRuleBeanDefinitionParser.java
/** {@inheritDoc} */ protected void doParse(Element configElement, ParserContext parserContext, BeanDefinitionBuilder builder) { super.doParse(configElement, parserContext, builder); builder.addConstructorArgValue(/* w w w. j a va 2s. com*/ DatatypeHelper.safeTrimOrNullString(configElement.getAttributeNS(null, "attributeID"))); Map<QName, List<Element>> children = XMLHelper.getChildElements(configElement); List<Element> permitValueRule = children .get(new QName(AttributeFilterNamespaceHandler.NAMESPACE, "PermitValueRule")); if (permitValueRule != null && !permitValueRule.isEmpty()) { builder.addPropertyValue("permitValueRule", SpringConfigurationUtils.parseInnerCustomElement(permitValueRule.get(0), parserContext)); } List<Element> permitValueRuleRef = children .get(new QName(AttributeFilterNamespaceHandler.NAMESPACE, "PermitValueRuleReference")); if (permitValueRuleRef != null && !permitValueRuleRef.isEmpty()) { String reference = getAbsoluteReference(configElement, "PermitValueRule", permitValueRuleRef.get(0).getTextContent()); builder.addPropertyReference("permitValueRule", reference); } List<Element> denyValueRule = children .get(new QName(AttributeFilterNamespaceHandler.NAMESPACE, "DenyValueRule")); if (denyValueRule != null && !denyValueRule.isEmpty()) { builder.addPropertyValue("denyValueRule", SpringConfigurationUtils.parseInnerCustomElement(denyValueRule.get(0), parserContext)); } List<Element> denyValueRuleRef = children .get(new QName(AttributeFilterNamespaceHandler.NAMESPACE, "DenyValueRuleReference")); if (denyValueRuleRef != null && !denyValueRuleRef.isEmpty()) { String reference = getAbsoluteReference(configElement, "DenyValueRule", denyValueRuleRef.get(0).getTextContent()); builder.addPropertyReference("denyValueRule", reference); } }
From source file:org.agilemicroservices.autoconfigure.orm.RepositoryBeanDefinitionBuilder.java
/** * Builds a new {@link BeanDefinitionBuilder} from the given {@link BeanDefinitionRegistry} and {@link ResourceLoader} * ./*from ww w . j av a2s . c om*/ * * @param configuration must not be {@literal null}. * @return */ public BeanDefinitionBuilder build(RepositoryConfiguration<?> configuration) { Assert.notNull(registry, "BeanDefinitionRegistry must not be null!"); Assert.notNull(resourceLoader, "ResourceLoader must not be null!"); String factoryBeanName = configuration.getRepositoryFactoryBeanName(); factoryBeanName = StringUtils.hasText(factoryBeanName) ? factoryBeanName : extension.getRepositoryFactoryClassName(); BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(factoryBeanName); builder.getRawBeanDefinition().setSource(configuration.getSource()); builder.addPropertyValue("repositoryInterface", configuration.getRepositoryInterface()); builder.addPropertyValue("queryLookupStrategyKey", configuration.getQueryLookupStrategyKey()); builder.addPropertyValue("lazyInit", configuration.isLazyInit()); builder.addPropertyValue("repositoryBaseClass", configuration.getRepositoryBaseClassName()); NamedQueriesBeanDefinitionBuilder definitionBuilder = new NamedQueriesBeanDefinitionBuilder( extension.getDefaultNamedQueryLocation()); if (StringUtils.hasText(configuration.getNamedQueriesLocation())) { definitionBuilder.setLocations(configuration.getNamedQueriesLocation()); } builder.addPropertyValue("namedQueries", definitionBuilder.build(configuration.getSource())); String customImplementationBeanName = registerCustomImplementation(configuration); if (customImplementationBeanName != null) { builder.addPropertyReference("customImplementation", customImplementationBeanName); builder.addDependsOn(customImplementationBeanName); } RootBeanDefinition evaluationContextProviderDefinition = new RootBeanDefinition( ExtensionAwareEvaluationContextProvider.class); evaluationContextProviderDefinition.setSource(configuration.getSource()); builder.addPropertyValue("evaluationContextProvider", evaluationContextProviderDefinition); return builder; }
From source file:com.dangdang.ddframe.rdb.sharding.spring.namespace.parser.ShardingJdbcDataSourceBeanDefinitionParser.java
private BeanDefinition parseTableRuleConfig(final Element tableElement) { BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition(TableRuleConfig.class); String dynamic = tableElement .getAttribute(ShardingJdbcDataSourceBeanDefinitionParserTag.DYNAMIC_TABLE_ATTRIBUTE); if (!Strings.isNullOrEmpty(dynamic)) { factory.addPropertyValue("dynamic", dynamic); }//w w w. ja v a 2s . c o m String actualTables = tableElement .getAttribute(ShardingJdbcDataSourceBeanDefinitionParserTag.ACTUAL_TABLES_ATTRIBUTE); if (!Strings.isNullOrEmpty(actualTables)) { factory.addPropertyValue("actualTables", actualTables); } String dataSourceNames = tableElement .getAttribute(ShardingJdbcDataSourceBeanDefinitionParserTag.DATA_SOURCE_NAMES_ATTRIBUTE); if (!Strings.isNullOrEmpty(dataSourceNames)) { factory.addPropertyValue("dataSourceNames", dataSourceNames); } String databaseStrategy = tableElement .getAttribute(ShardingJdbcDataSourceBeanDefinitionParserTag.DATABASE_STRATEGY_ATTRIBUTE); if (!Strings.isNullOrEmpty(databaseStrategy)) { factory.addPropertyReference("databaseStrategy", databaseStrategy); } String tableStrategy = tableElement .getAttribute(ShardingJdbcDataSourceBeanDefinitionParserTag.TABLE_STRATEGY_ATTRIBUTE); if (!Strings.isNullOrEmpty(tableStrategy)) { factory.addPropertyReference("tableStrategy", tableStrategy); } return factory.getBeanDefinition(); }
From source file:org.synyx.hades.dao.config.DaoConfigDefinitionParser.java
/** * Registers a {@code GenericDaoFactoryBean} for a bean with the given name * and the provided configuration context. It is mainly used to construct * bean name, entity class name and DAO interface name. * /*from www .j a v a 2s . c om*/ * @param parserContext * @param name * @param context */ private void registerGenericDaoFactoryBean(final ParserContext parserContext, final DaoContext context) { Object beanSource = parserContext.extractSource(context.getElement()); BeanDefinitionBuilder beanDefinitionBuilder = BeanDefinitionBuilder .rootBeanDefinition(context.getDaoFactoryClassName()); beanDefinitionBuilder.addPropertyValue("daoInterface", context.getInterfaceName()); beanDefinitionBuilder.addPropertyValue("queryLookupStrategy", context.getQueryLookupStrategy()); String entityManagerRef = context.getEntityManagerFactoryRef(); if (null != entityManagerRef) { beanDefinitionBuilder.addPropertyValue("entityManager", getEntityManagerBeanDefinitionFor(entityManagerRef, beanSource)); } beanDefinitionBuilder.addPropertyValue("transactionManager", context.getTransactionManagerRef()); String customImplementationBeanName = registerCustomImplementation(context, parserContext, beanSource); if (customImplementationBeanName != null) { beanDefinitionBuilder.addPropertyReference("customDaoImplementation", customImplementationBeanName); } AbstractBeanDefinition beanDefinition = beanDefinitionBuilder.getBeanDefinition(); beanDefinition.setSource(beanSource); LOG.debug("Registering Hades DAO: {} - DAO interface: {} - Factory: {} - Custom implementation: {}", new Object[] { context.getBeanName(), context.getInterfaceName(), context.getDaoFactoryClassName(), customImplementationBeanName }); BeanComponentDefinition definition = new BeanComponentDefinition(beanDefinition, context.getBeanName()); parserContext.registerBeanComponent(definition); }
From source file:net.shibboleth.idp.profile.spring.relyingparty.metadata.impl.HTTPMetadataProviderParser.java
/** {@inheritDoc} */ // Checkstyle: CyclomaticComplexity OFF @Override//from w w w . j a v a2 s. co m protected void doNativeParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder) { super.doNativeParse(element, parserContext, builder); if (element.hasAttributeNS(null, "cacheDuration")) { log.error("{}: cacheDuration is not supported", parserContext.getReaderContext().getResource().getDescription()); throw new BeanDefinitionParsingException(new Problem("cacheDuration is not supported", new Location(parserContext.getReaderContext().getResource()))); } if (element.hasAttributeNS(null, "maintainExpiredMetadata")) { log.error("{}: maintainExpiredMetadata is not supported", parserContext.getReaderContext().getResource().getDescription()); throw new BeanDefinitionParsingException(new Problem("maintainExpiredMetadata is not supported", new Location(parserContext.getReaderContext().getResource()))); } boolean haveTLSTrustEngine = false; if (element.hasAttributeNS(null, "tlsTrustEngineRef")) { builder.addPropertyReference("tLSTrustEngine", StringSupport.trimOrNull(element.getAttributeNS(null, "tlsTrustEngineRef"))); haveTLSTrustEngine = true; } else { BeanDefinition tlsTrustEngine = parseTLSTrustEngine(element, parserContext); if (tlsTrustEngine != null) { builder.addPropertyValue("tLSTrustEngine", tlsTrustEngine); haveTLSTrustEngine = true; } } if (element.hasAttributeNS(null, "httpClientRef")) { builder.addConstructorArgReference( StringSupport.trimOrNull(element.getAttributeNS(null, "httpClientRef"))); if (element.hasAttributeNS(null, "requestTimeout") || element.hasAttributeNS(null, "disregardSslCertificate") || element.hasAttributeNS(null, "disregardTLSCertificate") || element.hasAttributeNS(null, "proxyHost") || element.hasAttributeNS(null, "proxyPort") || element.hasAttributeNS(null, "proxyUser") || element.hasAttributeNS(null, "proxyPassword")) { log.warn("httpClientRef overrides settings for requestTimeout, disregardSslCertificate, " + "disregardTLSCertificate, proxyHost, proxyPort, proxyUser and proxyPassword"); } } else { builder.addConstructorArgValue(buildHttpClient(element, parserContext, haveTLSTrustEngine)); } builder.addConstructorArgValue(StringSupport.trimOrNull(element.getAttributeNS(null, METADATA_URL))); if (element.hasAttributeNS(null, BASIC_AUTH_USER) || element.hasAttributeNS(null, BASIC_AUTH_PASSWORD)) { builder.addPropertyValue("basicCredentials", buildBasicCredentials(element)); } }
From source file:org.opencredo.esper.config.xml.EsperStatementParser.java
@Override protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder .genericBeanDefinition(EsperNamespaceUtils.BASE_PACKAGE + ".EsperStatement"); Object query = element.getAttribute(EsperNamespaceUtils.STATEMENT_QUERY_ATTRIBUTE); builder.addConstructorArgValue(query); ManagedSet listeners = null;/* w w w . j a v a 2 s . c om*/ Element listenersElement = DomUtils.getChildElementByTagName(element, "listeners"); if (listenersElement != null) { EsperListenerParser listenerParser = new EsperListenerParser(); listeners = listenerParser.parseListeners(listenersElement, parserContext); if (listeners != null) { builder.addPropertyValue("listeners", listeners); } else { parserContext.getReaderContext().error("At least one 'listener' should be provided.", listenersElement); } } else { Element subscriberElement = DomUtils.getChildElementByTagName(element, "subscriber"); if (subscriberElement != null) { String subscriberRef = (String) subscriberElement.getAttribute("ref"); if (StringUtils.hasText(subscriberRef)) { builder.addPropertyReference("subscriber", subscriberRef); } } else { parserContext.getReaderContext() .error("At least one of 'listeners' or 'subscriber' should be provided.", element); } } return builder.getBeanDefinition(); }
From source file:org.brekka.stillingar.spring.config.ConfigurationServiceBeanDefinitionParser.java
/** * @param element// www . jav a 2s . c o m * @return */ protected AbstractBeanDefinition prepareResourceManager(Element element, Engine engine, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(ResourceSnapshotManager.class); builder.addConstructorArgValue(prepareResourceSelector(element, engine, parserContext)); builder.addConstructorArgReference(getLoaderReference(element)); builder.addConstructorArgValue(prepareResourceMonitor(element)); Element handlers = selectSingleChildElement(element, "handlers", true); if (handlers != null) { String rejectedRef = handlers.getAttribute("rejected-ref"); if (StringUtils.hasLength(rejectedRef)) { builder.addPropertyReference("rejectedResourceHandler", rejectedRef); } } return builder.getBeanDefinition(); }