示例#1
0
        public IResultSetFilter Instantiate(IRankingInfo rankingInfo, IEnumerable <IColumnDefinitionLight> columns)
        {
            var groupingFactory = new ByColumnGroupingFactory();
            var grouping        = groupingFactory.Instantiate(columns);

            var rankingFactory = new RankingFactory();
            var ranking        = rankingFactory.Instantiate(rankingInfo);

            return(new FilterGroupByFilter(ranking, grouping));
        }
示例#2
0
        public AbstractRanking Instantiate(IRankingInfo info)
        {
            switch (info.Option)
            {
            case RankingOption.Top:
                return(new TopRanking(info.Count, info.Operand, info.Type));

            case RankingOption.Bottom:
                return(new BottomRanking(info.Count, info.Operand, info.Type));

            default:
                throw new ArgumentOutOfRangeException();
            }
        }