1
2
3
4
5
6
7 package org.mule.config.spring.parsers.specific;
8
9 import org.mule.config.spring.factories.BridgeFactoryBean;
10 import org.mule.config.spring.parsers.processors.CheckExclusiveAttributes;
11 import org.mule.config.spring.parsers.processors.CheckExclusiveAttributesAndChildren;
12 import org.w3c.dom.Element;
13
14 public class BridgeDefinitionParser extends AbstractFlowConstructDefinitionParser
15 {
16 public BridgeDefinitionParser()
17 {
18 super.registerPreProcessor(new CheckExclusiveAttributes(new String[][]{
19 new String[]{INBOUND_ADDRESS_ATTRIBUTE}, new String[]{INBOUND_ENDPOINT_REF_ATTRIBUTE}}));
20
21 super.registerPreProcessor(new CheckExclusiveAttributes(new String[][]{
22 new String[]{OUTBOUND_ADDRESS_ATTRIBUTE}, new String[]{OUTBOUND_ENDPOINT_REF_ATTRIBUTE}}));
23
24 super.registerPreProcessor(new CheckExclusiveAttributesAndChildren(new String[]{
25 INBOUND_ENDPOINT_REF_ATTRIBUTE, INBOUND_ADDRESS_ATTRIBUTE}, new String[]{INBOUND_ENDPOINT_CHILD}));
26
27 super.registerPreProcessor(new CheckExclusiveAttributesAndChildren(new String[]{
28 OUTBOUND_ENDPOINT_REF_ATTRIBUTE, OUTBOUND_ADDRESS_ATTRIBUTE, TRANSFORMER_REFS_ATTRIBUTE,
29 RESPONSE_TRANSFORMER_REFS_ATTRIBUTE}, new String[]{OUTBOUND_ENDPOINT_CHILD}));
30 }
31
32 @Override
33 protected Class<?> getBeanClass(Element element)
34 {
35 return BridgeFactoryBean.class;
36 }
37 }