1
2
3
4
5
6
7
8
9
10 package org.mule.transport.rmi.config;
11
12 import org.mule.api.config.MuleProperties;
13 import org.mule.config.spring.factories.InboundEndpointFactoryBean;
14 import org.mule.config.spring.factories.OutboundEndpointFactoryBean;
15 import org.mule.config.spring.handlers.AbstractMuleNamespaceHandler;
16 import org.mule.config.spring.parsers.specific.endpoint.TransportEndpointDefinitionParser;
17 import org.mule.config.spring.parsers.specific.endpoint.TransportGlobalEndpointDefinitionParser;
18 import org.mule.endpoint.URIBuilder;
19 import org.mule.transport.rmi.RmiConnector;
20
21
22
23
24
25 public class RmiNamespaceHandler extends AbstractMuleNamespaceHandler
26 {
27
28 public static final String OBJECT = "object";
29 public static final String[] PROPERTIES = new String[]{MuleProperties.MULE_METHOD_PROPERTY};
30 public static final String[] ADDRESS = new String[]{OBJECT, URIBuilder.HOST, URIBuilder.PORT};
31
32 public void init()
33 {
34 registerMuleBeanDefinitionParser("endpoint", new TransportGlobalEndpointDefinitionParser(RmiConnector.RMI, TransportGlobalEndpointDefinitionParser.PROTOCOL, ADDRESS, PROPERTIES)).addAlias(OBJECT, URIBuilder.PATH);
35 registerMuleBeanDefinitionParser("inbound-endpoint", new TransportEndpointDefinitionParser(RmiConnector.RMI, TransportGlobalEndpointDefinitionParser.PROTOCOL, InboundEndpointFactoryBean.class, ADDRESS, PROPERTIES)).addAlias(OBJECT, URIBuilder.PATH);
36 registerMuleBeanDefinitionParser("outbound-endpoint", new TransportEndpointDefinitionParser(RmiConnector.RMI, TransportGlobalEndpointDefinitionParser.PROTOCOL, OutboundEndpointFactoryBean.class, ADDRESS, PROPERTIES)).addAlias(OBJECT, URIBuilder.PATH);
37 registerConnectorDefinitionParser(RmiConnector.class);
38 }
39
40 }