Ejemplo n.º 1
0
        public static void LoadGlobalFilters(this List <IAuctionFilter> me, AuctionFilterFactory filtersFactory)
        {
            var filters = new List <FilterMetaData> {
                new FilterMetaData {
                    EntityName = "Auction", Name = "AuctionHTMLDecoderFilter"
                },
                new FilterMetaData {
                    EntityName = "Auction", Name = "AuctionDateConverterFilter"
                },
                new FilterMetaData {
                    EntityName = "Auction", Name = "AuctionCopyFromIfEmptyFilter", Properties = "{ source:'SaleNumber', dest:'Id' }"
                },
                new FilterMetaData {
                    EntityName = "Auction", Name = "AuctionIdUniqueFilter"
                },
                new FilterMetaData {
                    EntityName = "Auction", Name = "AuctionPhotoHostPrefixFilter"
                },
                new FilterMetaData {
                    EntityName = "Auction", Name = "AuctionPhotoFilter", Properties = "PhotoRaw"
                },
                new FilterMetaData {
                    EntityName = "Auction", Name = "AuctionURLHostPrefixFilter"
                },
                /// TODO ->> temporary disabled
                ///new FilterMetaData { EntityName = "Auction", Name = "AuctionSkipByExpirationFilter" },
                new FilterMetaData {
                    EntityName = "Auction", Name = "AuctionSkipByCompletionFilter"
                },
            };

            me.AddRange(filters.Select(x => filtersFactory.Produce(x)));
        }
Ejemplo n.º 2
0
        /*
         * public static void LoadFilters<TFilter, TFactory>(this List<TFilter> me, IEnumerable<FilterMetaData> filtersMetaData, TFactory filtersFactory)
         *  where TFactory: IFactory<FilterMetaData, TFilter>
         *  where TFilter : IFilter<TFilter>
         * {
         *  foreach (var filterMetaData in filtersMetaData)
         *  {
         *      var filter = filtersFactory.Produce(filterMetaData);
         *      if (filter == null) continue;
         *      me.Add(filter);
         *  }
         * }
         */

        public static void LoadFilters(this List <IAuctionFilter> me, IEnumerable <FilterMetaData> filtersMetaData, AuctionFilterFactory filtersFactory)
        {
            foreach (var filterMetaData in filtersMetaData)
            {
                var filter = filtersFactory.Produce(filterMetaData);
                if (filter == null)
                {
                    continue;
                }
                me.Add(filter);
            }
        }