public ListCollectionManager() { // Add an empty list so we can set various lists to empty var empty = new StringListManager(); this.ListCollection.Add("empty", empty); }
public StringListManager OpenList(string request, ListFlags flags = ListFlags.Unchanged) // All lists are accessed through here, flags determine mode { if (!this.ListCollection.TryGetValue(request, out var list)) { list = new StringListManager(); this.ListCollection.Add(request, list); if (!flags.HasFlag(ListFlags.InMemory)) { list.Readfile(request); // If in memory, we never read from disk } } else { if (flags.HasFlag(ListFlags.Uncached)) { list.Readfile(request); // If Cache is off, ALWAYS re-read file. } } return(list); }