Ejemplo n.º 1
0
        public void HandleReceivedMessage(Message message)
        {
            if (message is SearchRequest)
            {
                SearchResponse searchResponse = GetSearchResponse((SearchRequest)message);
                foreach (ConnectedClient connectedClient in clientsList)
                {
                    if (connectedClient.ClientID == searchResponse.ClientID)
                    {
                        connectedClient.TcpSocket.Send(MessageSerializer.Serialize(searchResponse));
                    }
                }
            }

            if (message is UpdateBookListRequest)
            {
                UpdateBookListRequest updateBookListRequest = (UpdateBookListRequest)message;
                foreach (ConnectedClient connectedClient in clientsList)
                {
                    if (connectedClient.ClientID == updateBookListRequest.ClientID)
                    {
                        connectedClient.ClientBookList = updateBookListRequest.NewBookList;
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public void SendUpdateBookListRequest(List <Book> books)
        {
            IPEndPoint clientIP = (IPEndPoint)(TcpSocket.LocalEndPoint);

            SetBookInServerList(books);
            UpdateBookListRequest updateBookListRequest = new UpdateBookListRequest(clientIP.Address.ToString(), clientIP.Port, ClientID, BookInServerList);

            SendMessage(updateBookListRequest);
        }