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