protected override void EstablishContext()
        {
            idCodeService = mocks.Stub<IIdCodeService>();
            httpRequestProvider = mocks.Stub<IHttpRequestProvider>();
            httpContextItemsProvider = mocks.Stub<IHttpContextItemsProvider>();
            requestUrlBaseProvider = mocks.Stub<IRequestUrlBaseProvider>();

            var containerMock = new WindsorContainer();

            containerMock.Register(Component.For<IIdCodeService>().Instance(idCodeService));
            containerMock.Register(Component.For<IHttpRequestProvider>().Instance(httpRequestProvider));
            containerMock.Register(Component.For<IHttpContextItemsProvider>().Instance(httpContextItemsProvider));
            containerMock.Register(Component.For<IRequestUrlBaseProvider>().Instance(requestUrlBaseProvider));

            var chainTypes = new List<Type>()
            {
                typeof(HttpContextItemsLeaCodeProvider),
                typeof(DashboardContextLeaCodeProvider),
                typeof(HttpRequestUrlLeaCodeProvider)
            };
            
            var chainRegistrar = new ChainOfResponsibilityRegistrar(containerMock);
            chainRegistrar.RegisterChainOf<ILocalEducationAgencyContextProvider, NullLeaCodeProvider>(chainTypes.ToArray());

            IoC.Initialize(containerMock);
        }
        public DashboardContextActionFilter()
        {
            //Resolve dependency.
            requestUrlBaseProvider = IoC.Resolve<IRequestUrlBaseProvider>();

            // Capture the metadata of the properties we're interested in for the DashboardContext
            var contextProperties = 
                from p in typeof(EdFiDashboardContext).GetProperties()
                select p;

            foreach (var property in contextProperties)
                _contextPropertiesByName.Add(property.Name.ToLower(), property);
        }
 public PreviousNextController(ISessionStateProvider sessionStateProvider, IRouteValuesPreparer routeValuesPreparer, IRequestUrlBaseProvider requestUrlBaseProvider)
 {
     this.sessionStateProvider = sessionStateProvider;
     this.routeValuesPreparer = routeValuesPreparer;
     this.requestUrlBaseProvider = requestUrlBaseProvider;
 }
 public HttpRequestUrlLeaCodeProvider(IIdCodeService idCodeService, IHttpRequestProvider httpRequestProvider, ILocalEducationAgencyContextProvider next, IRequestUrlBaseProvider requestUrlBaseProvider)
     : base(idCodeService, httpRequestProvider, next)
 {
     this.requestUrlBaseProvider = requestUrlBaseProvider;
 }