public ResponseValidationException(
     string message,
     string expectedCommand,
     IrcMessage ircMessage)
     : base(message)
 {
     ExpectedCommand = expectedCommand;
     IrcMessage = ircMessage;
 }
        public IrcMessage ValidateCommand(IrcMessage message, string expectedCommand)
        {
            if (string.IsNullOrWhiteSpace(expectedCommand))
            {
                throw new ArgumentException("Expected command is not set", "expectedCommand");
            }

            if (message == null)
            {
                throw new ResponseValidationException("Did not receive a response from the server.");
            }

            if (message.Command == expectedCommand)
            {
                return message;
            }

            var errorMessage =
                string.Format(
                    "Expected the message from the server to have command code \"{0}\", received \"{1}\" instead",
                    expectedCommand,
                    message.Command);
            throw new ResponseValidationException(errorMessage, expectedCommand, message);
        }
 public OnIrcMessageReadEventArgs(IrcMessage message)
 {
     Message = message;
 }