public void InitializeLists(Server server) { Task.Run(async() => { InitializeWorldsList(); RoleUpdater.InitializeList(RoleType.WHITELIST, WhiteList, Server); RoleUpdater.InitializeList(RoleType.BAN_LIST, BanList, Server); RoleUpdater.InitializeList(RoleType.OP_LIST, OPList, Server); Console.WriteLine("Finished reading Role-lists for " + server); PlayerList = new ObservableCollection <ServerPlayer>(); await foreach (ServerPlayer player in PlayerManager.Instance.GetInitialPlayerList(this)) { Application.Current.Dispatcher?.Invoke(() => { PlayerList.Add(player); Task.Run(RefreshPlayerList); }); } Console.WriteLine("Initialized PlayerList for server " + server); whitelistUpdater = new RoleUpdater(RoleType.WHITELIST, WhiteList, Server.Version); banlistUpdater = new RoleUpdater(RoleType.BAN_LIST, BanList, Server.Version); oplistUpdater = new RoleUpdater(RoleType.OP_LIST, OPList, Server.Version); Initialized = true; }); }