public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink) { if (_context.HasDynamicSinks || Context.HasGlobalDynamicSinks) { Context.NotifyGlobalDynamicSinks(true, msg, true, true); _context.NotifyDynamicSinks(true, msg, true, true); // replySink is null when calling a one way method if (replySink != null) { replySink = new ClientContextReplySink(_context, replySink); } } #if !DISABLE_REMOTING Identity identity = RemotingServices.GetMessageTargetIdentity(msg); IMessageCtrl res = identity.ChannelSink.AsyncProcessMessage(msg, replySink); if (replySink == null && (_context.HasDynamicSinks || Context.HasGlobalDynamicSinks)) { Context.NotifyGlobalDynamicSinks(false, msg, true, true); _context.NotifyDynamicSinks(false, msg, true, true); } return(res); #else return(null); #endif }
public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink) { if (this._context.HasDynamicSinks || Context.HasGlobalDynamicSinks) { Context.NotifyGlobalDynamicSinks(true, msg, true, true); this._context.NotifyDynamicSinks(true, msg, true, true); if (replySink != null) { replySink = new ClientContextReplySink(this._context, replySink); } } Identity messageTargetIdentity = RemotingServices.GetMessageTargetIdentity(msg); IMessageCtrl result = messageTargetIdentity.ChannelSink.AsyncProcessMessage(msg, replySink); if (replySink == null && (this._context.HasDynamicSinks || Context.HasGlobalDynamicSinks)) { Context.NotifyGlobalDynamicSinks(false, msg, true, true); this._context.NotifyDynamicSinks(false, msg, true, true); } return result; }
public IMessageCtrl AsyncProcessMessage (IMessage msg, IMessageSink replySink) { if (_context.HasDynamicSinks || Context.HasGlobalDynamicSinks) { Context.NotifyGlobalDynamicSinks (true, msg, true, true); _context.NotifyDynamicSinks (true, msg, true, true); // replySink is null when calling a one way method if (replySink != null) replySink = new ClientContextReplySink (_context, replySink); } Identity identity = RemotingServices.GetMessageTargetIdentity (msg); IMessageCtrl res = identity.ChannelSink.AsyncProcessMessage (msg, replySink); if (replySink == null && (_context.HasDynamicSinks || Context.HasGlobalDynamicSinks)) { Context.NotifyGlobalDynamicSinks (false, msg, true, true); _context.NotifyDynamicSinks (false, msg, true, true); } return res; }