public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink) { #if !DISABLE_REMOTING ServerIdentity identity = (ServerIdentity)RemotingServices.GetMessageTargetIdentity(msg); if (identity.HasServerDynamicSinks) { identity.NotifyServerDynamicSinks(true, msg, false, true); if (replySink != null) { replySink = new ServerObjectReplySink(identity, replySink); } } IMessageCtrl res = _nextSink.AsyncProcessMessage(msg, replySink); if (replySink == null) { identity.NotifyServerDynamicSinks(false, msg, true, true); } return(res); #else IMessageCtrl res = _nextSink.AsyncProcessMessage(msg, replySink); return(res); #endif }
public IMessageCtrl AsyncProcessMessage (IMessage msg, IMessageSink replySink) { ServerIdentity identity = (ServerIdentity) RemotingServices.GetMessageTargetIdentity (msg); if (identity.HasServerDynamicSinks) { identity.NotifyServerDynamicSinks (true, msg, false, true); if (replySink != null) replySink = new ServerObjectReplySink(identity, replySink); } IMessageCtrl res = _nextSink.AsyncProcessMessage (msg, replySink); if (replySink == null) identity.NotifyServerDynamicSinks (false, msg, true, true); return res; }
public IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink) { ServerIdentity serverIdentity = (ServerIdentity)RemotingServices.GetMessageTargetIdentity(msg); if (serverIdentity.HasServerDynamicSinks) { serverIdentity.NotifyServerDynamicSinks(true, msg, false, true); if (replySink != null) { replySink = new ServerObjectReplySink(serverIdentity, replySink); } } IMessageCtrl result = this._nextSink.AsyncProcessMessage(msg, replySink); if (replySink == null) { serverIdentity.NotifyServerDynamicSinks(false, msg, true, true); } return(result); }