Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright 2013-2014 the original author or authors.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
  *      http://www.apache.org/licenses/LICENSE-2.0
  *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.springframework.data.mongodb.config;
import  org.springframework.beans.factory.BeanDefinitionStoreException;
import  org.springframework.beans.factory.config.BeanDefinition;
import  org.springframework.beans.factory.support.AbstractBeanDefinition;
import  org.springframework.beans.factory.support.BeanDefinitionBuilder;
import  org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
import  org.springframework.beans.factory.xml.BeanDefinitionParser;
import  org.springframework.beans.factory.xml.ParserContext;
import  org.springframework.util.StringUtils;
BeanDefinitionParser to parse gridFsTemplate elements into BeanDefinitions.

Author(s):
Martin Baumgartner
class GridFsTemplateParser extends AbstractBeanDefinitionParser {
	/*
	 * (non-Javadoc)
	 * @see org.springframework.beans.factory.xml.AbstractBeanDefinitionParser#resolveId(org.w3c.dom.Element, org.springframework.beans.factory.support.AbstractBeanDefinition, org.springframework.beans.factory.xml.ParserContext)
	 */
	protected String resolveId(Element element, AbstractBeanDefinition definition, ParserContext parserContext)
			throws BeanDefinitionStoreException {
		String id = super.resolveId(elementdefinitionparserContext);
		return StringUtils.hasText(id) ? id : .;
	}
	/*
	 * (non-Javadoc)
	 * @see org.springframework.beans.factory.xml.AbstractBeanDefinitionParser#parseInternal(org.w3c.dom.Element, org.springframework.beans.factory.xml.ParserContext)
	 */
	protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) {
		BeanComponentDefinitionBuilder helper = new BeanComponentDefinitionBuilder(elementparserContext);
		String converterRef = element.getAttribute("converter-ref");
		String dbFactoryRef = element.getAttribute("db-factory-ref");
		String bucket = element.getAttribute("bucket");
		BeanDefinitionBuilder gridFsTemplateBuilder = BeanDefinitionBuilder.genericBeanDefinition(GridFsTemplate.class);
		if (StringUtils.hasText(dbFactoryRef)) {
			gridFsTemplateBuilder.addConstructorArgReference(dbFactoryRef);
else {
			gridFsTemplateBuilder.addConstructorArgReference(.);
		}
		if (StringUtils.hasText(converterRef)) {
			gridFsTemplateBuilder.addConstructorArgReference(converterRef);
else {
			gridFsTemplateBuilder.addConstructorArgReference(.);
		}
		if (StringUtils.hasText(bucket)) {
			gridFsTemplateBuilder.addConstructorArgValue(bucket);
		}
		return (AbstractBeanDefinition) helper.getComponentIdButFallback(gridFsTemplateBuilder.)
				.getBeanDefinition();
	}
New to GrepCode? Check out our FAQ X