private void HandleEvent(string xml, Socket socket) { switch (parser.GetRequestType(xml)) { case MessengerLibrary.DataSenders.Data.RequestType.Connect: User usr = parser.GetUser(xml); onlineUsersSocketDictionary.Add(usr.UserId, socket); serverEventHandler.userConnected(usr); break; case MessengerLibrary.DataSenders.Data.RequestType.CreateNewChat: serverEventHandler.NewChatCreated(parser.GetChatRoom(xml)); break; case MessengerLibrary.DataSenders.Data.RequestType.InviteUserToChat: serverEventHandler.NewUserToChatInvited(parser.GetChatRoom(xml)); break; case MessengerLibrary.DataSenders.Data.RequestType.RegisterNewUser: serverEventHandler.registerNewUser(parser.GetUser(xml)); break; case MessengerLibrary.DataSenders.Data.RequestType.SendMessage: serverEventHandler.newMessageSent(parser.GetMessage(xml)); break; case MessengerLibrary.DataSenders.Data.RequestType.Disconnect: serverEventHandler.userDisconnected(parser.GetUser(xml)); break; case MessengerLibrary.DataSenders.Data.RequestType.FindUser: throw new NotImplementedException(); break; case MessengerLibrary.DataSenders.Data.RequestType.AddFriend: throw new NotImplementedException(); break; default: throw new NotImplementedException(); break; } }