Beispiel #1
0
        /// <summary>
        /// Возвращает пользователей из комнаты.
        /// </summary>
        /// <param name="name"></param>
        /// <returns></returns>
        public List <User> GetRoomUsers(ServerGuard server, string name)
        {
            Room room;

            if (!server.Rooms.TryGetValue(name, out room))
            {
                throw new ArgumentException("This room does't exist");
            }
            return(GetRoomUsers(server, room));
        }
Beispiel #2
0
 public List <User> GetRoomUsers(ServerGuard server, Room room)
 {
     return(room.Users
            .Select(n =>
     {
         User user;
         server.Users.TryGetValue(n, out user);
         return new { Nick = n, User = user };
     })
            .Where(g =>
     {
         if (g.User == null)
         {
             ServerModel.Logger.WriteWarning("User not found: {0}", g.Nick);
             return false;
         }
         return true;
     })
            .Select(g => g.User)
            .ToList());
 }