mule中协议服务的查找

在mule中提供了tcp、vm、http、soap、jms、udp、file等多种协议,那么这些协议在运行期是怎样查找的呢?
这是由MuleClient在中调用send()方法发送一个事件时,由MuleEndPoint的父类ImmutableMuleEndpoint调用自身的 createEndpointFromUri(UMOEndpointURI uri, String type)方法来创建一个UMOEndpoint,在上面的方法中又调用了ConnectorFactory的createEndpoint(uri, type)方法,最后通过ConnectorFactory自身的getServiceDescriptor(String protocol, Properties overrides)方法,从mule.jar中,读取META-INF\services\org\mule\providers目录下的各种协议的配置文件,然后根据传入的参数protocol,取得当前protocol的配置属性,从而创建各种connector、dispatcher.factory、receiver、adapter、builder等,创建完毕后,调用MuleManager.getInstance()实例的registerXXX()方法进行注册。

 

- 作者: snowfox2008 2005年09月23日, 星期五 17:38

 

你可能感兴趣的:(jms,SOAP)