예제 #1
0
        public void Configure(IChimeraContainer ioc, Assembly assembly)
        {
            var types = assembly.GetTypes().Where(t => t.CanBeCastTo<IListener>());

            foreach (var t in types)
                ioc.RegisterSingleton(t, t);
        }
예제 #2
0
        public void InitializeContainer(IChimeraContainer container)
        {
            container.RegisterSingleton<IViewPresenterProcessor, ViewPresenterProcessor>();

            var engine = container.Get<IRoutingEngine>();
            var processor = container.Get<IViewPresenterProcessor>();
            engine.AddProcessor(processor);
        }
예제 #3
0
        public void Configure(IChimeraContainer ioc, Assembly assembly)
        {
            var typesToRegister = assembly.GetTypes().Where(t => t.HasAttribute<SingletonAttribute>());

            foreach (var concreteType in typesToRegister)
            {
                var interfaceType = concreteType.GetAttribute<SingletonAttribute>().Type;
                ioc.RegisterSingleton(interfaceType, concreteType);
            }
        }
예제 #4
0
        public void InitializeContainer(IChimeraContainer container)
        {
            container.RegisterSingleton<IViewModelEngine, ViewModelEngine>();
            container.RegisterSingleton<IViewModelProcessor, ViewModelProcessor>();

            var engine = container.Get<IRoutingEngine>();
            var processor = container.Get<IViewModelProcessor>();
            engine.AddProcessor(processor);

            var viewModelEngine = container.Get<IViewModelEngine>();

            ConfigureRegistrar(viewModelEngine, processor);
        }
예제 #5
0
        public void InitializeContainer(IChimeraContainer container)
        {
            container.RegisterSingleton<IViewEngine, ViewEngine>();
            container.RegisterSingleton<IViewProcessor, ViewProcessor>();

            var engine = container.Get<IRoutingEngine>();
            var processor = container.Get<IViewProcessor>();
            processor.DefaultShowAs("Window");
            engine.AddProcessor(processor);

            var viewEngine = container.Get<IViewEngine>();

            ConfigureRegistrar(viewEngine, processor);
        }
예제 #6
0
        public void InitializeContainer(IChimeraContainer container)
        {
            _container = container;

            container.RegisterSingleton<IControllerFactory, ControllerFactory>();
            container.RegisterSingleton<IControllerFactoryProcessor, ControllerFactoryProcessor>();
            container.RegisterSingleton<IControllerProcessor, ControllerProcessor>();

            var engine = container.Get<IRoutingEngine>();
            var factoryProcessor = container.Get<IControllerFactoryProcessor>();
            engine.AddProcessor(factoryProcessor);

            var factory = container.Get<IControllerFactory>();

            ConfigureRegistrar(factory, factoryProcessor);

            var processor = container.Get<IControllerProcessor>();
            engine.AddProcessor(processor);
        }
예제 #7
0
 public IocConfig(IChimeraContainer ioc)
 {
     _ioc = ioc;
     _conventions = new List<IConvention>();
     SetupDefaultConventions();
 }