1
2
3
4
5
6
7
8
9
10
11 package org.mule.module.xml.config;
12
13 import org.mule.config.spring.handlers.AbstractMuleNamespaceHandler;
14 import org.mule.config.spring.parsers.collection.ChildListEntryDefinitionParser;
15 import org.mule.config.spring.parsers.collection.ChildMapEntryDefinitionParser;
16 import org.mule.config.spring.parsers.generic.OrphanDefinitionParser;
17 import org.mule.config.spring.parsers.generic.TextDefinitionParser;
18 import org.mule.config.spring.parsers.specific.FilterDefinitionParser;
19 import org.mule.config.spring.parsers.specific.MessageProcessorDefinitionParser;
20 import org.mule.config.spring.parsers.specific.RouterDefinitionParser;
21 import org.mule.module.xml.filters.IsXmlFilter;
22 import org.mule.module.xml.filters.JXPathFilter;
23 import org.mule.module.xml.filters.JaxenFilter;
24 import org.mule.module.xml.filters.SchemaValidationFilter;
25 import org.mule.module.xml.filters.XPathFilter;
26 import org.mule.module.xml.routing.FilterBasedXmlMessageSplitter;
27 import org.mule.module.xml.routing.XmlMessageSplitter;
28 import org.mule.module.xml.transformer.DomDocumentToXml;
29 import org.mule.module.xml.transformer.JXPathExtractor;
30 import org.mule.module.xml.transformer.ObjectToXml;
31 import org.mule.module.xml.transformer.XPathExtractor;
32 import org.mule.module.xml.transformer.XQueryTransformer;
33 import org.mule.module.xml.transformer.XmlPrettyPrinter;
34 import org.mule.module.xml.transformer.XmlToDomDocument;
35 import org.mule.module.xml.transformer.XmlToObject;
36 import org.mule.module.xml.transformer.XmlToOutputHandler;
37 import org.mule.module.xml.transformer.jaxb.JAXBMarshallerTransformer;
38 import org.mule.module.xml.transformer.jaxb.JAXBUnmarshallerTransformer;
39
40 public class XmlNamespaceHandler extends AbstractMuleNamespaceHandler
41 {
42
43 public void init()
44 {
45
46 registerBeanDefinitionParser("jxpath-filter", new FilterDefinitionParser(JXPathFilter.class));
47 registerBeanDefinitionParser("jaxen-filter", new FilterDefinitionParser(JaxenFilter.class));
48 registerBeanDefinitionParser("is-xml-filter", new FilterDefinitionParser(IsXmlFilter.class));
49 registerBeanDefinitionParser("xpath-filter", new FilterDefinitionParser(XPathFilter.class));
50 registerBeanDefinitionParser("schema-validation-filter", new FilterDefinitionParser(SchemaValidationFilter.class));
51
52
53 registerBeanDefinitionParser("round-robin-splitter", new RouterDefinitionParser(XmlMessageSplitter.class));
54 registerBeanDefinitionParser("filter-based-splitter", new RouterDefinitionParser(FilterBasedXmlMessageSplitter.class));
55
56
57 registerBeanDefinitionParser("dom-to-xml-transformer", new MessageProcessorDefinitionParser(DomDocumentToXml.class));
58 registerBeanDefinitionParser("dom-to-output-handler-transformer", new MessageProcessorDefinitionParser(XmlToOutputHandler.class));
59 registerBeanDefinitionParser("jxpath-extractor-transformer", new MessageProcessorDefinitionParser(JXPathExtractor.class));
60 registerBeanDefinitionParser("xml-to-dom-transformer", new MessageProcessorDefinitionParser(XmlToDomDocument.class));
61 registerBeanDefinitionParser("xml-prettyprinter-transformer", new MessageProcessorDefinitionParser(XmlPrettyPrinter.class));
62 registerBeanDefinitionParser("xpath-extractor-transformer", new MessageProcessorDefinitionParser(XPathExtractor.class));
63
64
65 registerBeanDefinitionParser("jaxb-object-to-xml-transformer", new MessageProcessorDefinitionParser(JAXBMarshallerTransformer.class));
66 registerBeanDefinitionParser("jaxb-xml-to-object-transformer", new MessageProcessorDefinitionParser(JAXBUnmarshallerTransformer.class));
67 registerBeanDefinitionParser("jaxb-context", new OrphanDefinitionParser(JaxbContextFactoryBean.class, true));
68
69
70 registerBeanDefinitionParser("object-to-xml-transformer", new MessageProcessorDefinitionParser(ObjectToXml.class));
71 registerBeanDefinitionParser("xml-to-object-transformer", new MessageProcessorDefinitionParser(XmlToObject.class));
72 registerBeanDefinitionParser("alias", new ChildMapEntryDefinitionParser("aliases", "name", "class"));
73 registerBeanDefinitionParser("converter", new ChildListEntryDefinitionParser("converters", "class"));
74
75
76 registerBeanDefinitionParser("namespace-manager", new NamespaceManagerDefinitionParser());
77 registerBeanDefinitionParser("namespace", new ChildMapEntryDefinitionParser("namespaces", "prefix", "uri"));
78
79
80 registerBeanDefinitionParser("xslt-transformer", new XsltTransformerDefinitionParser());
81 registerBeanDefinitionParser("xslt-text", new XsltTextDefinitionParser("xslt", String.class));
82
83
84 registerBeanDefinitionParser("xquery-transformer", new MessageProcessorDefinitionParser(XQueryTransformer.class));
85 registerBeanDefinitionParser("xquery-text", new TextDefinitionParser("xquery", true));
86
87
88 registerBeanDefinitionParser("context-property", new ChildMapEntryDefinitionParser("contextProperties", "key", "value"));
89 }
90
91 }
92