using System; using System.Runtime.InteropServices; namespace System.Runtime.Remoting.Messaging { /// Defines the interface for a message sink. // Token: 0x020003EB RID: 1003 [ComVisible(true)] public interface IMessageSink { /// Synchronously processes the given message. /// A reply message in response to the request. /// The message to process. /// The immediate caller makes the call through a reference to the interface and does not have infrastructure permission. // Token: 0x06002718 RID: 10008 IMessage SyncProcessMessage(IMessage msg); /// Asynchronously processes the given message. /// Returns an interface that provides a way to control asynchronous messages after they have been dispatched. /// The message to process. /// The reply sink for the reply message. /// The immediate caller makes the call through a reference to the interface and does not have infrastructure permission. // Token: 0x06002719 RID: 10009 IMessageCtrl AsyncProcessMessage(IMessage msg, IMessageSink replySink); /// Gets the next message sink in the sink chain. /// The next message sink in the sink chain. /// The immediate caller makes the call through a reference to the interface and does not have infrastructure permission. /// /// /// // Token: 0x17000764 RID: 1892 // (get) Token: 0x0600271A RID: 10010 IMessageSink NextSink { get; } } }