List of usage examples for org.springframework.beans.factory.support ManagedList ManagedList
public ManagedList()
From source file:com.clican.pluto.dataprocess.spring.parser.ParamProcessorParser.java
@SuppressWarnings("unchecked") public void customiseBeanDefinition(BeanDefinition beanDef, Element element, ParserContext parserContext) { List paramBeanList = new ManagedList(); NodeList nodeList = element.getChildNodes(); for (int i = 0; i < nodeList.getLength(); i++) { Node node = nodeList.item(i); if (node.getNodeType() == Node.ELEMENT_NODE) { String localName = node.getLocalName(); if ("param".equals(localName)) { RootBeanDefinition bean = new RootBeanDefinition(); bean.setAbstract(false); bean.setBeanClass(ParamBean.class); bean.setLazyInit(false); bean.setAutowireMode(Autowire.BY_NAME.value()); Element paramElement = (Element) node; String paramName = paramElement.getAttribute("paramName"); String paramValue = paramElement.getAttribute("paramValue"); String type = paramElement.getAttribute("type"); String override = paramElement.getAttribute("override"); String pattern = paramElement.getAttribute("pattern"); bean.getPropertyValues().addPropertyValue("paramName", paramName); bean.getPropertyValues().addPropertyValue("paramValue", paramValue); bean.getPropertyValues().addPropertyValue("type", type); bean.getPropertyValues().addPropertyValue("pattern", pattern); if (StringUtils.isNotEmpty(override)) { RootBeanDefinition over = new RootBeanDefinition(); over.setAbstract(false); over.setBeanClass(Boolean.class); over.setLazyInit(false); over.getConstructorArgumentValues().addIndexedArgumentValue(0, override); bean.getPropertyValues().addPropertyValue("override", over); }//from w w w .j ava 2s. c o m paramBeanList.add(bean); } } } beanDef.getPropertyValues().addPropertyValue("paramBeanList", paramBeanList); }
From source file:com.clican.pluto.dataprocess.spring.parser.ExcelProcessorParser.java
@SuppressWarnings("unchecked") public void customiseBeanDefinition(BeanDefinition beanDef, Element element, ParserContext parserContext) { List excelBeanList = new ManagedList(); NodeList nodeList = element.getChildNodes(); for (int i = 0; i < nodeList.getLength(); i++) { Node node = nodeList.item(i); if (node.getNodeType() == Node.ELEMENT_NODE) { String localName = node.getLocalName(); if ("write".equals(localName) || "read".equals(localName)) { RootBeanDefinition bean = new RootBeanDefinition(); bean.setAbstract(false); bean.setBeanClass(ExcelExecBean.class); bean.setLazyInit(false); bean.setAutowireMode(Autowire.BY_NAME.value()); Element paramElement = (Element) node; String paramName = paramElement.getAttribute("paramName"); String resultName = paramElement.getAttribute("resultName"); String resource = paramElement.getAttribute("resource"); String sheetName = paramElement.getAttribute("sheetName"); String columns = paramElement.getAttribute("columns"); String columnsVarName = paramElement.getAttribute("columnsVarName"); String sheetVarName = paramElement.getAttribute("sheetVarName"); String typeMapStr = paramElement.getAttribute("typeMap"); String resourceVarName = paramElement.getAttribute("resourceVarName"); Map<String, String> typeMap = new HashMap<String, String>(); if ("read".equals(localName)) { for (String type : typeMapStr.split(";")) { typeMap.put(type.split("=>")[0], type.split("=>")[1]); }/*from ww w . j a v a2 s . com*/ } bean.getPropertyValues().addPropertyValue("paramName", paramName); bean.getPropertyValues().addPropertyValue("resultName", resultName); bean.getPropertyValues().addPropertyValue("sheetName", sheetName); if (StringUtils.isNotEmpty(columns)) { bean.getPropertyValues().addPropertyValue("columns", columns.split(",")); } bean.getPropertyValues().addPropertyValue("resource", resource); bean.getPropertyValues().addPropertyValue("typeMap", typeMap); bean.getPropertyValues().addPropertyValue("columnsVarName", columnsVarName); bean.getPropertyValues().addPropertyValue("sheetVarName", sheetVarName); bean.getPropertyValues().addPropertyValue("resourceVarName", resourceVarName); if ("write".equals(localName)) { bean.getPropertyValues().addPropertyValue("read", false); } excelBeanList.add(bean); } } } beanDef.getPropertyValues().addPropertyValue("excelExecBeanList", excelBeanList); }
From source file:com.github.xdcrafts.flower.spring.impl.xml.SyncFlowBeanDefinitionHandler.java
protected void doParse(Element element, BeanDefinitionBuilder bean) { final ManagedList<Object> actions = new ManagedList<>(); final NodeList actionNodes = element.getElementsByTagName("*"); if (actionNodes != null && actionNodes.getLength() != 0) { for (int i = 0; i < actionNodes.getLength(); i++) { final Node node = actionNodes.item(i); final String type = node.getLocalName(); if (type.equalsIgnoreCase("method")) { actions.add(node.getTextContent()); } else if (type.equalsIgnoreCase("action")) { actions.add(new RuntimeBeanReference(node.getTextContent())); } else { throw new IllegalArgumentException("Unknown element type: " + type); }/* w w w. jav a 2 s . c om*/ } } bean.addPropertyValue("actions", actions); }
From source file:com.clican.pluto.dataprocess.spring.parser.CollectionIteratorProcessorParser.java
@SuppressWarnings({ "unchecked", "rawtypes" }) public void customiseBeanDefinition(BeanDefinition beanDef, Element element, ParserContext parserContext) { this.setBeanDefinitionStringProperty("elementName", beanDef, element); this.setBeanDefinitionStringProperty("collectionName", beanDef, element); String commit = element.getAttribute("stepCommit"); if (StringUtils.isNotEmpty(commit)) { beanDef.getPropertyValues().addPropertyValue("stepCommit", Boolean.parseBoolean(commit)); }// w w w . ja v a 2s . com String iteratorProcessors = element.getAttribute("iteratorProcessors"); List iteratorProcessorList = new ManagedList(); for (String nextDataProcess : iteratorProcessors.split(",")) { nextDataProcess = nextDataProcess.trim(); iteratorProcessorList.add(new RuntimeBeanReference(nextDataProcess)); } beanDef.getPropertyValues().addPropertyValue("iteratorProcessors", iteratorProcessorList); }
From source file:com.clican.pluto.dataprocess.spring.parser.JdbcExecProcessorParser.java
@SuppressWarnings("unchecked") public void customiseBeanDefinition(BeanDefinition beanDef, Element element, ParserContext parserContext) { String jdbcTemplate = element.getAttribute("jdbcTemplate"); beanDef.getPropertyValues().addPropertyValue("jdbcTemplate", new RuntimeBeanReference(jdbcTemplate)); List jdbcExecBeanList = new ManagedList(); NodeList nodeList = element.getChildNodes(); for (int i = 0; i < nodeList.getLength(); i++) { Node node = nodeList.item(i); if (node.getNodeType() == Node.ELEMENT_NODE) { String localName = node.getLocalName(); if ("exec".equals(localName)) { RootBeanDefinition bean = new RootBeanDefinition(); bean.setAbstract(false); bean.setBeanClass(JdbcExecBean.class); bean.setLazyInit(false); bean.setAutowireMode(Autowire.BY_NAME.value()); Element jdbcExecElement = (Element) node; String batch = jdbcExecElement.getAttribute("batch"); String paramName = jdbcExecElement.getAttribute("paramName"); String resultName = jdbcExecElement.getAttribute("resultName"); String paramNameMap = jdbcExecElement.getAttribute("paramNameMap"); String singleRow = jdbcExecElement.getAttribute("singleRow"); String clazz = jdbcExecElement.getAttribute("clazz"); String sql = jdbcExecElement.getTextContent(); if (StringUtils.isNotEmpty(paramNameMap)) { Map<String, String> map = new HashMap<String, String>(); for (String pnm : paramNameMap.split(";")) { String contextName = pnm.split("=>")[0].trim(); String ibatisName = pnm.split("=>")[1].trim(); map.put(contextName, ibatisName); }//from www .java 2 s .co m bean.getPropertyValues().addPropertyValue("paramNameMap", map); } if (StringUtils.isNotEmpty(batch)) { bean.getPropertyValues().addPropertyValue("batch", Boolean.parseBoolean(batch)); } if (StringUtils.isNotEmpty(singleRow)) { bean.getPropertyValues().addPropertyValue("singleRow", Boolean.parseBoolean(singleRow)); } if (StringUtils.isNotEmpty(clazz)) { try { bean.getPropertyValues().addPropertyValue("clazz", Class.forName(clazz)); } catch (Exception e) { throw new RuntimeException(e); } } bean.getPropertyValues().addPropertyValue("paramName", paramName); bean.getPropertyValues().addPropertyValue("resultName", resultName); bean.getPropertyValues().addPropertyValue("sql", sql); jdbcExecBeanList.add(bean); } } } beanDef.getPropertyValues().addPropertyValue("jdbcExecBeanList", jdbcExecBeanList); }
From source file:com.clican.pluto.dataprocess.spring.parser.ForProcessorParser.java
@SuppressWarnings("unchecked") public void customiseBeanDefinition(BeanDefinition beanDef, Element element, ParserContext parserContext) { this.setBeanDefinitionStringProperty("elementName", beanDef, element); this.setBeanDefinitionStringProperty("step", beanDef, element); this.setBeanDefinitionStringProperty("start", beanDef, element); this.setBeanDefinitionStringProperty("end", beanDef, element); String commit = element.getAttribute("stepCommit"); if (StringUtils.isNotEmpty(commit)) { beanDef.getPropertyValues().addPropertyValue("stepCommit", Boolean.parseBoolean(commit)); }/*from www.j a v a 2 s .c o m*/ String iteratorProcessors = element.getAttribute("iteratorProcessors"); List iteratorProcessorList = new ManagedList(); for (String nextDataProcess : iteratorProcessors.split(",")) { nextDataProcess = nextDataProcess.trim(); iteratorProcessorList.add(new RuntimeBeanReference(nextDataProcess)); } beanDef.getPropertyValues().addPropertyValue("iteratorProcessors", iteratorProcessorList); }
From source file:org.urbantower.j4s.spring.ServerParser.java
@Override public BeanDefinition parse(Element element, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(SpringServer.class); //set port/* w w w . j ava2 s .c o m*/ String port = element.getAttribute("http-port"); builder.addPropertyValue("httpPort", Integer.parseInt(port)); //parse & set handlers ManagedList<BeanDefinition> handlers = new ManagedList<>(); if (element.hasAttribute("handler")) { String handlerRef = element.getAttribute("handler"); builder.addPropertyValue("handler", new RuntimeBeanReference(handlerRef)); } else { List<Element> childs = DomUtils.getChildElements(element); if (childs != null && childs.size() > 0) { BeanDefinition handlerDef = parserContext.getDelegate().parseCustomElement(childs.get(0), builder.getBeanDefinition()); builder.addPropertyValue("handler", handlerDef); } } //get id String id = parserContext.getReaderContext().generateBeanName(builder.getBeanDefinition()); if (element.hasAttribute("id")) { id = element.getAttribute("id"); } //get the thread-pool if (element.hasAttribute("thread-pool")) { builder.addConstructorArgValue(new RuntimeBeanReference(element.getAttribute("thread-pool"))); } //register server def. parserContext.getRegistry().registerBeanDefinition(id, builder.getBeanDefinition()); return builder.getBeanDefinition(); }
From source file:org.urbantower.j4s.spring.HandlerCollectionParser.java
@Override protected AbstractBeanDefinition parseInternal(Element element, ParserContext parserContext) { BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(HandlerCollection.class); List<Element> handlerElms = DomUtils.getChildElements(element); List<Object> handlerDefs = new ManagedList<>(); for (Element elm : handlerElms) { if ("handler".equals(elm.getLocalName())) { RuntimeBeanReference reference = new RuntimeBeanReference(elm.getAttribute("ref")); handlerDefs.add(reference);//from w w w . j av a 2s .c o m } else { BeanDefinition handlerDef = parserContext.getDelegate().parseCustomElement(elm, builder.getBeanDefinition()); handlerDefs.add(handlerDef); } } builder.addPropertyValue("handlers", handlerDefs); return builder.getBeanDefinition(); }
From source file:com.easyshop.datasource.MyBatisBeanFactoryPostProcessor.java
/** * @param beanFactory//from www. j a v a 2 s . c o m * @throws BeansException * @see org.springframework.beans.factory.config.BeanFactoryPostProcessor#postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory) */ public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { BeanDefinition bd = beanFactory.getBeanDefinition(sqlSessionFactoryBeanName); MutablePropertyValues propertyValues = bd.getPropertyValues(); PropertyValue propertyValue = propertyValues.getPropertyValue("mapperLocations"); Object value = propertyValue.getValue(); ManagedList<TypedStringValue> locations = new ManagedList<TypedStringValue>(); for (String location : mapperLocations) { locations.add(new TypedStringValue(location)); log.info(" SQL Mapper :{} " + location); } if (value == null) { PropertyValue newValue = new PropertyValue(propertyValue, locations); propertyValues.addPropertyValue(newValue); } else if (value instanceof String) { locations.add(new TypedStringValue((String) value)); PropertyValue newValue = new PropertyValue(propertyValue, locations); propertyValues.addPropertyValue(newValue); } else if (value instanceof ManagedList) { ((ManagedList) value).addAll(locations); } else if (value instanceof TypedStringValue) { locations.add((TypedStringValue) value); PropertyValue newValue = new PropertyValue(propertyValue, locations); propertyValues.addPropertyValue(newValue); } }
From source file:com.bstek.dorado.spring.ClassTypeListShortCutDecorator.java
@SuppressWarnings({ "unchecked", "rawtypes" }) public BeanDefinitionHolder decorate(Node node, BeanDefinitionHolder definition, ParserContext parserContext) { AbstractBeanDefinition beanDef = (AbstractBeanDefinition) definition.getBeanDefinition(); MutablePropertyValues propertyValues = (beanDef.getPropertyValues() == null) ? new MutablePropertyValues() : beanDef.getPropertyValues(); ManagedList list = null;/* www. ja v a 2s. c o m*/ boolean firstPropertyValue = propertyValues.getPropertyValue(IMPL_TYPES) == null; if (!firstPropertyValue) { list = (ManagedList) (propertyValues.getPropertyValue(IMPL_TYPES).getValue()); } else { list = new ManagedList(); list.setSource(node); list.setMergeEnabled(true); propertyValues.addPropertyValue(IMPL_TYPES, list); beanDef.setPropertyValues(propertyValues); } Element el = (Element) node; String className = el.getAttribute("name"); try { list.add(Class.forName(className)); } catch (ClassNotFoundException e) { logger.warn(e, e); } return definition; }