Esempio n. 1
0
        /// <summary>
        /// Sends first N messages to a server. You specify this
        /// number by using count parameter.
        /// </summary>
        /// <param name="count">The number of messages.</param>
        public void SendMessagesToServer(int count)
        {
            if (count > this.Messages.Count)
            {
                throw new ArgumentException("Count is greater than the number of existing messages.");
            }

            var ss = new StreamString(this.pipeClient);

            for (int i = 0; i < count; i++)
            {
                Console.WriteLine($"[CLIENT]: Send '{this.Messages[i]}'");

                ss.WriteString(this.Messages[i]);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Receives messages from a server while none of them are not equal
        /// to stop command.
        /// </summary>
        /// <returns>Returns the list of received messages.</returns>
        public List <string> GetHistoryOfMessagesFromServer()
        {
            var messages = new List <string>();
            var ss       = new StreamString(this.pipeClient);

            string receivedMessage = ss.ReadString();

            while (this.pipeClient.IsConnected &&
                   receivedMessage != StopReadingMessagesCommand &&
                   !string.IsNullOrEmpty(receivedMessage))
            {
                messages.Add(receivedMessage);
                receivedMessage = ss.ReadString();
            }

            return(messages);
        }