Files
Filtration/Filtration/Utilities/BlockGroupMapper.cs
2015-07-06 13:45:19 +01:00

27 lines
1001 B
C#

using System.Collections.ObjectModel;
using System.Linq;
using AutoMapper;
using Filtration.ObjectModel;
using Filtration.ViewModels;
namespace Filtration.Utilities
{
internal interface IBlockGroupMapper
{
ObservableCollection<ItemFilterBlockGroupViewModel> MapBlockGroupsToViewModels(
ObservableCollection<ItemFilterBlockGroup> blockGroups, bool showAdvanced);
}
internal class BlockGroupMapper : IBlockGroupMapper
{
public ObservableCollection<ItemFilterBlockGroupViewModel> MapBlockGroupsToViewModels(
ObservableCollection<ItemFilterBlockGroup> blockGroups, bool showAdvanced)
{
var mappedViewModels = Mapper.Map<ObservableCollection<ItemFilterBlockGroupViewModel>>(blockGroups, opts => opts.Items["showAdvanced"] = showAdvanced);
AutoMapperHelpers.ItemFilterBlockGroupViewModelPostMap(mappedViewModels.First());
return mappedViewModels.First().ChildGroups;
}
}
}