} // RegisteredChannels
internal static IMessageSink CreateMessageSink(String url, Object data, out String objectURI)
{
BCLDebug.Trace("REMOTE", "ChannelServices::CreateMessageSink for url " + url + "\n");
IMessageSink msgSink = null;
objectURI = null;
RegisteredChannelList regChnlList = s_registeredChannels;
int count = regChnlList.Count;
for (int i = 0; i < count; i++)
{
if (regChnlList.IsSender(i))
{
IChannelSender chnl = (IChannelSender)regChnlList.GetChannel(i);
msgSink = chnl.CreateMessageSink(url, data, out objectURI);
if (msgSink != null)
{
break;
}
}
}
// If the object uri has not been set, set it to the url as
// default value
if (null == objectURI)
{
objectURI = url;
}
return(msgSink);
} // CreateMessageSink