/// <summary> /// Saves new user. /// </summary> /// <param name="nickname">New user nickname.</param> /// <returns>User information object.</returns> public void SaveUser(string nickname) { var user = UserBusiness.SaveUser(nickname); callback = OperationContext.Current.GetCallbackChannel <IChatCallback>(); allUsers.Add(user.Id + user.Nickname, callback); callback.UserInformation(user); callback.UpdateChatRooms(ChatRoomBusiness.ListChatRooms()); }
/// <summary> /// Saves given chat room to db and rise callback to updated chat room list. /// </summary> /// <param name="chatRoomName">Chat room name.</param> public void SaveChatRoom(string chatRoomName) { var chatRoomList = ChatRoomBusiness.SaveAndGetLatestChatRoomList(chatRoomName); foreach (KeyValuePair <string, IChatCallback> user in allUsers) { IChatCallback proxy = user.Value; proxy.UpdateChatRooms(chatRoomList); } }