public ConcurrentHashSet <string> FilteredWordsForServer(ulong guildId) { var words = new ConcurrentHashSet <string>(); if (WordFilteringServers.Contains(guildId)) { ServerFilteredWords.TryGetValue(guildId, out words); } return(words); }
public void ClearFilteredWords(ulong guildId) { using (var uow = _db.GetDbContext()) { var gc = uow.GuildConfigs.ForId(guildId, set => set.Include(x => x.FilteredWords) .Include(x => x.FilterWordsChannelIds)); WordFilteringServers.TryRemove(guildId); ServerFilteredWords.TryRemove(guildId, out _); foreach (var c in gc.FilterWordsChannelIds) { WordFilteringChannels.TryRemove(c.ChannelId); } gc.FilterWords = false; gc.FilteredWords.Clear(); gc.FilterWordsChannelIds.Clear(); uow.SaveChanges(); } }