예제 #1
0
        public void Read(IConfiguration configuration)
        {
            string value;
            if (configuration.TryGet("RetryCount", out value))
            {
                RetryCount = int.Parse(value);
            }
            if (configuration.TryGet("DefaultAdBlock", out value))
            {
                DefaultAdBlock = value;
            }

            var items = new List<AdBlock>();
            foreach (var subConfig in configuration.GetSubKeys("AdBlock"))
            {
                var item = new AdBlock { Name = subConfig.Key };
                if (subConfig.Value.TryGet("Origin", out value))
                {
                    item.Origin = value;
                }
                if (subConfig.Value.TryGet("ProductCode", out value))
                {
                    item.ProductCode = value;
                }
                items.Add(item);
            }
            AdBlocks = items.ToDictionary(
                item => item.Name,
                item => item,
                StringComparer.OrdinalIgnoreCase);
        }
예제 #2
0
        public void Read(IConfiguration configuration)
        {
            string value;

            if (configuration.TryGet("RetryCount", out value))
            {
                RetryCount = int.Parse(value);
            }
            if (configuration.TryGet("DefaultAdBlock", out value))
            {
                DefaultAdBlock = value;
            }

            var items = new List <AdBlock>();

            foreach (var subConfig in configuration.GetSubKeys("AdBlock"))
            {
                var item = new AdBlock {
                    Name = subConfig.Key
                };
                if (subConfig.Value.TryGet("Origin", out value))
                {
                    item.Origin = value;
                }
                if (subConfig.Value.TryGet("ProductCode", out value))
                {
                    item.ProductCode = value;
                }
                items.Add(item);
            }
            AdBlocks = items.ToDictionary(
                item => item.Name,
                item => item,
                StringComparer.OrdinalIgnoreCase);
        }
예제 #3
0
        public void Read(IConfiguration configuration)
        {
            var value = configuration["RetryCount"];
            if (!string.IsNullOrEmpty(value))
            {
                RetryCount = int.Parse(value);
            }
			value = configuration["DefaultAdBlock"];
            if (!string.IsNullOrEmpty(value))
            {
                DefaultAdBlock = value;
            }

            var items = new List<AdBlock>();
            foreach (var subConfig in configuration.GetSection("AdBlock").GetChildren())
            {
                var item = new AdBlock { Name = subConfig.Key };
				value = subConfig["Origin"];
                if (!string.IsNullOrEmpty(value))
                {
                    item.Origin = value;
                }
				value = subConfig["ProductCode"];
                if (!string.IsNullOrEmpty(value))
                {
                    item.ProductCode = value;
                }
                items.Add(item);
            }
            AdBlocks = items.ToDictionary(
                item => item.Name, 
                item => item,
                StringComparer.OrdinalIgnoreCase);
        }
        public override CefReturnValue OnBeforeResourceLoad(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request,
                                                            IRequestCallback callback)
        {
            if (AdBlock.IsAdUrl(new Uri(request.Url), request.Headers, request.ReferrerUrl))
            {
                return(CefReturnValue.Cancel);
            }

            return(base.OnBeforeResourceLoad(browserControl, browser, frame, request, callback));
        }
        public override bool OnResourceResponse(IWebBrowser browserControl, IBrowser browser, IFrame frame, IRequest request,
                                                IResponse response)
        {
            if (AdBlock.IsAdUrl(new Uri(request.Url), response.ResponseHeaders, request.ReferrerUrl))
            {
                return(false);
            }

            return(base.OnResourceResponse(browserControl, browser, frame, request, response));
        }
예제 #6
0
        public void Read(IConfiguration configuration)
        {
            var value = configuration["RetryCount"];

            if (!string.IsNullOrEmpty(value))
            {
                RetryCount = int.Parse(value);
            }
            value = configuration["DefaultAdBlock"];
            if (!string.IsNullOrEmpty(value))
            {
                DefaultAdBlock = value;
            }

            var items = new List <AdBlock>();

            foreach (var subConfig in configuration.GetSection("AdBlock").GetChildren())
            {
                var item = new AdBlock {
                    Name = subConfig.Key
                };
                value = subConfig["Origin"];
                if (!string.IsNullOrEmpty(value))
                {
                    item.Origin = value;
                }
                value = subConfig["ProductCode"];
                if (!string.IsNullOrEmpty(value))
                {
                    item.ProductCode = value;
                }
                items.Add(item);
            }
            AdBlocks = items.ToDictionary(
                item => item.Name,
                item => item,
                StringComparer.OrdinalIgnoreCase);
        }