1
2
3
4
5
6
7 package org.mule.module.json.config;
8
9 import org.mule.config.spring.parsers.collection.ChildMapEntryDefinitionParser;
10 import org.mule.config.spring.parsers.generic.OrphanDefinitionParser;
11 import org.mule.config.spring.parsers.specific.FilterDefinitionParser;
12 import org.mule.config.spring.parsers.specific.MessageProcessorDefinitionParser;
13 import org.mule.module.json.filters.IsJsonFilter;
14 import org.mule.module.json.transformers.JsonToObject;
15 import org.mule.module.json.transformers.ObjectToJson;
16
17 import org.springframework.beans.factory.xml.NamespaceHandlerSupport;
18
19
20
21
22 public class JsonNamespaceHandler extends NamespaceHandlerSupport
23 {
24 public void init()
25 {
26 registerBeanDefinitionParser("is-json-filter", new FilterDefinitionParser(IsJsonFilter.class));
27 registerBeanDefinitionParser("object-to-json-transformer", new MessageProcessorDefinitionParser(ObjectToJson.class));
28 registerBeanDefinitionParser("json-to-object-transformer", new MessageProcessorDefinitionParser(JsonToObject.class));
29 registerBeanDefinitionParser("serialization-mixin", new ChildMapEntryDefinitionParser("serializationMixins", "targetClass", "mixinClass"));
30 registerBeanDefinitionParser("deserialization-mixin", new ChildMapEntryDefinitionParser("deserializationMixins", "targetClass", "mixinClass"));
31 registerBeanDefinitionParser("mixin", new ChildMapEntryDefinitionParser("mixins", "targetClass", "mixinClass"));
32 registerBeanDefinitionParser("mapper", new OrphanDefinitionParser(MapperFactoryBean.class, true));
33 }
34 }