1
2
3
4
5
6
7 package org.mule.config.spring.parsers;
8
9 import org.mule.config.spring.factories.InboundEndpointFactoryBean;
10 import org.mule.config.spring.handlers.AbstractMuleNamespaceHandler;
11 import org.mule.config.spring.parsers.beans.ChildBean;
12 import org.mule.config.spring.parsers.beans.OrphanBean;
13 import org.mule.config.spring.parsers.collection.ChildListEntryDefinitionParser;
14 import org.mule.config.spring.parsers.collection.ChildMapDefinitionParser;
15 import org.mule.config.spring.parsers.collection.ChildMapEntryDefinitionParser;
16 import org.mule.config.spring.parsers.collection.ChildSingletonMapDefinitionParser;
17 import org.mule.config.spring.parsers.delegate.InheritDefinitionParser;
18 import org.mule.config.spring.parsers.delegate.MapDefinitionParserMutator;
19 import org.mule.config.spring.parsers.delegate.SingleParentFamilyDefinitionParser;
20 import org.mule.config.spring.parsers.generic.ChildDefinitionParser;
21 import org.mule.config.spring.parsers.generic.NamedDefinitionParser;
22 import org.mule.config.spring.parsers.generic.OrphanDefinitionParser;
23 import org.mule.config.spring.parsers.generic.ParentDefinitionParser;
24 import org.mule.config.spring.parsers.specific.endpoint.TransportEndpointDefinitionParser;
25 import org.mule.config.spring.parsers.specific.endpoint.TransportGlobalEndpointDefinitionParser;
26 import org.mule.config.spring.parsers.specific.endpoint.support.AddressedEndpointDefinitionParser;
27 import org.mule.config.spring.parsers.specific.endpoint.support.ChildAddressDefinitionParser;
28 import org.mule.config.spring.parsers.specific.endpoint.support.ChildEndpointDefinitionParser;
29 import org.mule.config.spring.parsers.specific.endpoint.support.OrphanEndpointDefinitionParser;
30 import org.mule.endpoint.EndpointURIEndpointBuilder;
31
32
33
34
35
36 public class ParsersTestNamespaceHandler extends AbstractMuleNamespaceHandler
37 {
38
39 public void init()
40 {
41 registerMuleBeanDefinitionParser("orphan", new OrphanDefinitionParser(OrphanBean.class, true)).addAlias("bar", "foo").addIgnored("ignored").addCollection("offspring");
42 registerMuleBeanDefinitionParser("child", new ChildDefinitionParser("child", ChildBean.class)).addAlias("bar", "foo").addIgnored("ignored").addCollection("offspring");
43 registerMuleBeanDefinitionParser("mapped-child", new MapDefinitionParserMutator("map", new ChildDefinitionParser("child", ChildBean.class))).addAlias("bar", "foo").addIgnored("ignored").addCollection("offspring");
44 registerMuleBeanDefinitionParser("kid", new ChildDefinitionParser("kid", ChildBean.class)).addAlias("bar", "foo").addIgnored("ignored");
45 registerMuleBeanDefinitionParser("parent", new ParentDefinitionParser()).addAlias("bar", "foo").addIgnored("ignored").addCollection("offspring");
46 registerMuleBeanDefinitionParser("orphan1", new NamedDefinitionParser("orphan1")).addAlias("bar", "foo").addIgnored("ignored").addCollection("offspring");
47 registerMuleBeanDefinitionParser("orphan2", new NamedDefinitionParser("orphan2")).addAlias("bar", "foo").addIgnored("ignored");
48 registerMuleBeanDefinitionParser("map-entry", new ChildMapEntryDefinitionParser("map", "key", "value")).addCollection("map");
49 registerMuleBeanDefinitionParser("map-entry-combiner", new ChildSingletonMapDefinitionParser("map")).addCollection("map");
50 registerMuleBeanDefinitionParser("properties", new ChildMapDefinitionParser("map")).addCollection("map");
51 registerBeanDefinitionParser("list-entry", new ChildListEntryDefinitionParser("list"));
52 registerMuleBeanDefinitionParser("named", new NamedDefinitionParser()).addAlias("bar", "foo").addIgnored("ignored");
53 registerMuleBeanDefinitionParser("inherit",
54 new InheritDefinitionParser(
55 new OrphanDefinitionParser(OrphanBean.class, true),
56 new NamedDefinitionParser())).addAlias("bar", "foo").addIgnored("ignored").addCollection("offspring");
57
58 registerMuleBeanDefinitionParser("address", new ChildAddressDefinitionParser("test")).addAlias("address", "host");
59 registerBeanDefinitionParser("orphan-endpoint", new OrphanEndpointDefinitionParser(EndpointURIEndpointBuilder.class));
60 registerBeanDefinitionParser("child-endpoint", new ChildEndpointDefinitionParser(InboundEndpointFactoryBean.class));
61 registerBeanDefinitionParser("unaddressed-orphan-endpoint", new OrphanEndpointDefinitionParser(EndpointURIEndpointBuilder.class));
62 registerBeanDefinitionParser("addressed-orphan-endpoint", new AddressedEndpointDefinitionParser("test", AddressedEndpointDefinitionParser.PROTOCOL, new OrphanEndpointDefinitionParser(EndpointURIEndpointBuilder.class), new String[]{"path"}, new String[]{}));
63 registerBeanDefinitionParser("addressed-child-endpoint", new TransportEndpointDefinitionParser("test", InboundEndpointFactoryBean.class, new String[]{}));
64
65 registerBeanDefinitionParser("list-element-test-1", new ChildListEntryDefinitionParser("kids", "listAttribute"));
66 registerBeanDefinitionParser("list-element-test-2",
67 new SingleParentFamilyDefinitionParser(
68 new OrphanDefinitionParser(OrphanBean.class, true))
69 .addChildDelegate("kid1", new ChildListEntryDefinitionParser("kids", "kid1"))
70 .addChildDelegate("kid2", new ChildListEntryDefinitionParser("kids", "kid2")));
71
72
73
74
75
76
77
78
79
80 registerMuleBeanDefinitionParser("complex-endpoint",
81 new TransportGlobalEndpointDefinitionParser(
82 "test", TransportGlobalEndpointDefinitionParser.PROTOCOL,
83 new String[]{"path"}, new String[]{"string", "bar"})).addAlias("bar", "foo");
84
85 registerBeanDefinitionParser("no-name", new OrphanDefinitionParser(OrphanBean.class, true));
86 registerBeanDefinitionParser("no-name-2", new IndependentDefinitionParser());
87 registerBeanDefinitionParser("container", new ThirdPartyContainerDefinitionParser());
88 }
89
90 }