1
2
3
4
5
6
7 package org.mule.config.spring.parsers.specific;
8
9 import org.mule.config.spring.parsers.generic.OrphanDefinitionParser;
10 import org.mule.config.spring.parsers.processors.ProvideDefaultName;
11
12 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
13 import org.springframework.beans.factory.xml.ParserContext;
14 import org.w3c.dom.Element;
15
16 public class ServiceDefinitionParser extends OrphanDefinitionParser
17 {
18
19
20 public ServiceDefinitionParser()
21 {
22 super(true);
23 registerPreProcessor(new ProvideDefaultName("service"));
24 }
25
26 public ServiceDefinitionParser(Class clazz)
27 {
28 super(clazz, true);
29 registerPreProcessor(new ProvideDefaultName("service"));
30 }
31
32 @java.lang.Override
33 protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder builder)
34 {
35 Element parent = (Element) element.getParentNode();
36 String modelName = parent.getAttribute(ATTRIBUTE_NAME);
37 builder.addPropertyReference("model", modelName);
38 super.doParse(element, parserContext, builder);
39 }
40
41 }