private static List CreateList(string listCode, IIdGenerator idGenerator, IListInfoProvider listInfoProvider) { var listInfo = listInfoProvider.GetListInfoFor(listCode); return(new List { Id = idGenerator.Generate(), Name = listInfo.Name, Order = listInfo.Order, Description = listInfo.Description, Enabled = listInfo.Enabled }); }
private static Dictionary <string, List> LoadLists(IIdGenerator idGenerator, IDobihFile dobihFile, IListInfoProvider listInfoProvider) { return(dobihFile.Records .SelectMany(x => x.Lists) .Distinct() .ToDictionary(listCode => listCode, listCode => CreateList(listCode, idGenerator, listInfoProvider)) .Where(x => x.Value.Enabled) .ToDictionary(x => x.Key, x => x.Value)); }
public ListProvider(IIdGenerator idGenerator, IDobihFile dobihFile, IListInfoProvider listInfoProvider) { _lists = LoadLists(idGenerator, dobihFile, listInfoProvider); }