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