Ejemplo n.º 1
0
        public int AllocateRequestId(IRequestChain requestChain)
        {
            lock (_requestChainLock)
            {
                if (_requestIdQueue.Count == 0)
                {
                    for (int i = 0; i < 32; ++i)
                    {
                        _requestIdQueue.Enqueue(_nextRequestId++);
                    }
                }

                var id = _requestIdQueue.Dequeue();
                _requestChains.Add(id, (RequestChain)requestChain);
                return(id);
            }
        }
Ejemplo n.º 2
0
        public void SetUp()
        {
            routeCollection = A.Fake<IRouteCollection>();
            outputWriter = A.Fake<IOutputWriter>();
            requestGraph = A.Fake<IRequestGraph>();
            prePipelineCollection = A.Fake<IPrePipelineCollection>();
            postPipelineCollection = A.Fake<IPostPipelineCollection>();

            endpoint = A.Fake<IEndpoint>();
            request = A.Fake<IRequest>();
            route = A.Fake<IRoute>();
            requestChain = A.Fake<IRequestChain>();
            response = A.Fake<IResponse>();

            serviceContainer = A.Fake<IServiceContainer>();

            A.CallTo(() => route.Endpoint).Returns(endpoint);
            A.CallTo(() => routeCollection.Resolve(request)).Returns(route);
            A.CallTo(() => requestGraph.FindChainFor(endpoint)).Returns(requestChain);
            A.CallTo(() => outputWriter.CreateResponse()).Returns(response);

            engine = new UWebEngine(routeCollection, requestGraph, serviceContainer, prePipelineCollection, postPipelineCollection);
        }
Ejemplo n.º 3
0
 public DetailsQueryResult(IRequestChain requestChain)
 {
     RequestChain = requestChain;
 }