Ejemplo n.º 1
0
        /// <summary>
        /// </summary>
        /// <param name="request"></param>
        /// <param name="response"></param>
        public void Process(IClientRequest request, IServerResponse response)
        {
            string[] clientMessage = Encoding.Default.GetString(request.Read()).TrimEnd('\0').Split(' ');

            if (clientMessage.Length == 1 && clientMessage[0] != "BYE")
            {
                response.Write("-Error Unknown Command");
                return;
            }

            Debug.WriteLine("Message received by mock server: " + clientMessage[0] + " " + (clientMessage.Length == 2 ? clientMessage[1] : string.Empty));

            switch (clientMessage[0])
            {
            case "CONN":
                response.Write(string.Format("+OK Hello {0}", clientMessage[1]));
                break;

            case "MESG":
                MessageCount++;
                response.Write("+OK Msg Received");
                OnMessageReceived(new MessageReceivedEventArgs(clientMessage[1]));
                break;

            case "BYE":
                response.Write("+OK GoodBye");
                response.EndConnection = true;
                break;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        ///     Processes a client request.
        /// </summary>
        /// <param name="request"></param>
        /// <param name="response"></param>
        public void Process(IClientRequest request, IServerResponse response)
        {
            Argument.Assert.IsNotNull(request, "request");
            Argument.Assert.IsNotNull(response, "response");

            string[] commandArgs = Encoding.Default.GetString(request.Read()).Split(' ');
            ProcessCommand(commandArgs, response);
        }