Пример #1
0
        private HttpRequest PreRequest(HttpRequest request, IIndexerProxy selectedProxy)
        {
            if (selectedProxy != null)
            {
                request = selectedProxy.PreRequest(request);
            }

            return(request);
        }
Пример #2
0
        private HttpResponse PostResponse(HttpResponse response, IIndexerProxy selectedProxy)
        {
            if (selectedProxy != null)
            {
                response = selectedProxy.PostResponse(response);
            }

            return(response);
        }
Пример #3
0
        private IIndexerProxy GetProxy(ProviderDefinition definition)
        {
            //Skip DB call if no tags on the indexers
            if (definition.Tags.Count == 0)
            {
                return(null);
            }

            var           proxies       = _indexerProxyFactory.GetAvailableProviders();
            IIndexerProxy selectedProxy = null;

            foreach (var proxy in proxies)
            {
                if (definition.Tags.Intersect(proxy.Definition.Tags).Any())
                {
                    selectedProxy = proxy;
                    break;
                }
            }

            return(selectedProxy);
        }