Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright 2010-2013 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.gemfire.config;
Parser for <pool;gt; definitions.

Author(s):
Costin Leau
David Turanski
	protected Class<?> getBeanClass(Element element) {
		return PoolFactoryBean.class;
	}
	protected void postProcess(BeanDefinitionBuilder builderElement element) {
		List<ElementsubElements = DomUtils.getChildElements(element);
		ManagedList<Objectlocators = new ManagedList<Object>(subElements.size());
		ManagedList<Objectservers = new ManagedList<Object>(subElements.size());
		// parse nested locator/server elements
		for (Element subElement : subElements) {
			String name = subElement.getLocalName();
			if ("locator".equals(name)) {
				locators.add(parseLocator(subElement));
			}
			if ("server".equals(name)) {
				servers.add(parseServer(subElement));
			}
		}
		if (!locators.isEmpty()) {
			builder.addPropertyValue("locators"locators);
		}
		if (!servers.isEmpty()) {
			builder.addPropertyValue("servers"servers);
		}
	}
	private Object parseServer(Element subElement) {
		return parseConnection(subElement);
	}
	private Object parseLocator(Element subElement) {
		return parseConnection(subElement);
	}
	private BeanDefinition parseConnection(Element element) {
		BeanDefinitionBuilder defBuilder = BeanDefinitionBuilder.genericBeanDefinition(InetSocketAddress.class);
		defBuilder.addConstructorArgValue(element.getAttribute("host"));
		defBuilder.addConstructorArgValue(element.getAttribute("port"));
		return defBuilder.getBeanDefinition();
	}
	protected String resolveId(Element elementAbstractBeanDefinition definitionParserContext parserContext)
		String name = super.resolveId(elementdefinitionparserContext);
		if (!StringUtils.hasText(name)) {
			//For backward compatibility
		}
		return name;
	}
New to GrepCode? Check out our FAQ X