/// <summary> /// 初始化 MessageContext 类的新实例。 /// </summary> protected MessageContext(MessageInfo messageInfo) { if (messageInfo == null) { throw new ArgumentNullException("messageInfo"); } this.messageInfo = messageInfo; }
internal PipeMessageContext(DataReceivedEventArgs eventArgs, MessageInfo messageInfo) : base(messageInfo) { if (eventArgs == null) { throw new ArgumentNullException("eventArgs"); } this.eventArgs = eventArgs; }
internal FileMessageContext(string fileName, MessageInfo messageInfo) : base(messageInfo) { if (String.IsNullOrEmpty(fileName)) { throw new ArgumentNullOrEmptyException("fileName"); } this.fileName = fileName; }
/// <summary> /// 从指定的 DataReceivedEventArgs 和 Message 创建 IMessageContext 的实例。 /// </summary> /// <param name="eventArgs">要从其创建 IMessageContext 实例的 DataReceivedEventArgs 对象。</param> /// <param name="messageInfo">要从其创建 IMessageContext 实例的 MessageInfo 对象。</param> /// <returns>MessageContext 实例。</returns> public static MessageContext CreateFrom(DataReceivedEventArgs eventArgs, MessageInfo messageInfo) { return new PipeMessageContext(eventArgs, messageInfo); }
/// <summary> /// 从指定的消息文件创建 IMessageContext 的实例。 /// </summary> /// <param name="fileName">要从其创建 IMessageContext 实例的消息文件的路径。</param> /// <param name="messageInfo">要从其创建 IMessageContext 实例的 MessageInfo 对象。</param> /// <returns>MessageContext 实例。</returns> public static MessageContext CreateFrom(string fileName, MessageInfo messageInfo) { return new FileMessageContext(fileName, messageInfo); }