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