using System; using System.Collections.Generic; using System.Text; namespace Taobao.Top.Link.Channel { /// context used with channel event /// public class ChannelContext : EventArgs { /// error from channel /// public Exception Error { get; private set; } /// the channel used to sending message /// public IChannelSender Sender { get; private set; } /// received message /// public object Message { get; private set; } public ChannelContext(Exception error) { this.Error = error; } public ChannelContext(object message, IChannelSender sender) { this.Message = message; this.Sender = sender; } /// /// send data to channel where the message come from /// /// public void Reply(byte[] data) { if (this.Sender == null) throw new LinkException("can not send"); this.Sender.Send(data); } } }