public static IWindsorContainer CreateContainer() { var container = new WindsorContainer(); container.AddFacility <StartableFacility>(); container.Install(FromAssembly.InThisApplication()); container.Register( AllTypes.FromThisAssembly() .BasedOn <ApiController>() .LifestyleTransient()); container.Register( AllTypes.FromThisAssembly() .BasedOn <IHub>() .LifestyleSingleton()); container.Register( Component.For <ITraceWriter>() .ImplementedBy <TraceWriter>() .LifestyleSingleton()); container.Register( AllTypes.FromThisAssembly() .Pick().If(Component.IsCastleComponent)); return(container); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register(AllTypes.FromThisAssembly() .Where(type => type.Name.EndsWith("Repository")) .WithServiceDefaultInterfaces() .LifestyleTransient()); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register(AllTypes.FromThisAssembly().Pick() .If(Component.IsInSameNamespaceAs <FormsAuthenticationService>()) .Configure(c => c.LifeStyle.Transient) .WithService.DefaultInterface()); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register(AllTypes.FromThisAssembly() .Pick().If(t => t.Name.EndsWith("Controller")) .Configure(configurer => configurer.Named(configurer.Implementation.Name)) .LifestylePerWebRequest()); }
public void Can_filter_types_based_on_custom_attribute() { container.Register(AllTypes.FromThisAssembly().Where(Component.HasAttribute <UserAttribute>)); container.Resolve <HasUserAttributeRegister>(); container.Resolve <HasUserAttributeNonRegister>(); }
public void Install(Castle.Windsor.IWindsorContainer container, Castle.MicroKernel.SubSystems.Configuration.IConfigurationStore store) { container.Register(Classes.FromThisAssembly() .BasedOn <ApiController>() .LifestylePerWebRequest(), Component.For <ILogService>() .ImplementedBy <LogService>() .LifeStyle.PerWebRequest, Component.For <IDatabaseFactory>() .ImplementedBy <DatabaseFactory>() .LifeStyle.PerWebRequest, Component.For <IUnitOfWork>() .ImplementedBy <UnitOfWork>() .LifeStyle.PerWebRequest, AllTypes.FromThisAssembly().BasedOn <IHttpController>().LifestyleTransient()//, ); container.Register(Classes.FromAssemblyNamed("Oc.Carbon.ServiceLayer").Where(type => type.Name.EndsWith("Service")).WithServiceAllInterfaces().LifestylePerWebRequest()); container.Register(Classes.FromAssemblyNamed("Oc.Carbon.Data").Where(type => type.Name.EndsWith("Repository")).WithServiceAllInterfaces().LifestylePerWebRequest()); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register(Classes.FromThisAssembly() .BasedOn <IController>() .LifestyleTransient()); container.Register( //Component.For<IQueryableUnitOfWork, UnitOfWork>().ImplementedBy<UnitOfWork>(), //Component.For<IProfileRepository, ProfileRepository>().ImplementedBy<ProfileRepository>(), //Component.For<IAddressRepository, AddressRepository>().ImplementedBy<AddressRepository>(), //Component.For<IAddressTypeRepository, AddressTypeRepository>().ImplementedBy<AddressTypeRepository>(), //Component.For<IPhoneTypeRepository, PhoneTypeRepository>().ImplementedBy<PhoneTypeRepository>(), //Component.For<IPhoneRepository, PhoneRepository>().ImplementedBy<PhoneRepository>(), //Component.For<IAnswersRepository, AnswersRepository>().ImplementedBy<AnswersRepository>(), //Component.For<IQuestionsRepository, QuestionsRepository>().ImplementedBy<QuestionsRepository>(),//.LifestyleSingleton(), //Component.For<ISecurityRepository, SecurityRepository>().ImplementedBy<SecurityRepository>(), //Component.For<ISecurityPriceRepository, SecurityPriceRepository>().ImplementedBy<SecurityPriceRepository>(), //Component.For<IDailyPriceRepository, DailyPriceRepository>().ImplementedBy<DailyPriceRepository>(), //Component.For<ICommentsRepository, CommentsRepository>().ImplementedBy<CommentsRepository>(), //Component.For<ITweetRepository, TweetRepository>().ImplementedBy<TweetRepository>(), //Component.For<IUserRepository, UserRepository>().ImplementedBy<UserRepository>(), ////Component.For<ILoggerManager>().ImplementedBy<LoggerManager>(), //Component.For<IRiskManager>().ImplementedBy<RiskManager>(), //Component.For<ISecurityManager>().ImplementedBy<SecurityManager>(), //Component.For<ICommentManager>().ImplementedBy<CommentManager>(), //Component.For<ITweetManager>().ImplementedBy<TweetManager>(), Component.For <IUserManager>().ImplementedBy <UserManager>(), Component.For <IRouteManager>().ImplementedBy <RouteManager>(), Component.For <IGroupManager>().ImplementedBy <GroupManager>(), AllTypes.FromThisAssembly().BasedOn <IHttpController>().LifestyleTransient() ) .AddFacility <LoggingFacility>(f => f.UseLog4Net()); //LoggerFactory.SetCurrent(new TraceSourceLogFactory()); //EntityValidatorFactory.SetCurrent(new DataAnnotationsEntityValidatorFactory()); }
private BasedOnDescriptor FindControllers() { return(AllTypes.FromThisAssembly() .BasedOn <IController>() .If(Component.IsInSameNamespaceAs <HomeController>()) .If(t => t.Name.EndsWith("Controller"))); }
public void Attribute_registers_type_properly() { Container.Register(AllTypes.FromThisAssembly().Where(Component.IsCastleComponent)); var handlers = Container.Kernel.GetHandlers(typeof(ISimpleService)); Assert.IsNotEmpty(handlers); }
public void Attribute_key_can_be_overwritten() { Container.Register(AllTypes.FromThisAssembly().Where(Component.IsCastleComponent) .ConfigureFor <HasKey>(k => k.Named("changedKey"))); Assert.IsNull(Container.Kernel.GetHandler("hasKey")); Assert.IsNotNull(Container.Kernel.GetHandler("changedKey")); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes .FromThisAssembly() .BasedOn <IService>() .Configure(c => c.LifeStyle.Transient.Named(c.Implementation.Name))); }
public void DefaultInterface_can_match_multiple_types() { Kernel.Register(AllTypes.FromThisAssembly().Where(t => t == typeof(CommonSub1Impl)).WithService.DefaultInterface()); var one = Kernel.Resolve <ICommon>(); var two = Kernel.Resolve <ICommonSub1>(); Assert.AreSame(one, two); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly() .BasedOn <IStartable>() .WithService.FirstInterface() ); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly() .BasedOn(containerType) .Configure(config => config.LifeStyle.PerWebRequest) ); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly() .Where(x => x.Namespace.StartsWith("FakeVader.Core.Services")) .WithService.DefaultInterface() ); }
public void Install(Castle.Windsor.IWindsorContainer container, Castle.MicroKernel.SubSystems.Configuration.IConfigurationStore store) { container.Register(AllTypes.FromThisAssembly() .Pick().If(t => t.Name.EndsWith("Controller")) .Configure(configurer => configurer.Named(configurer.Implementation.Name)) //.LifestylePerWebRequest() .LifestyleTransient()); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register(AllTypes.FromThisAssembly() .Where(Component.IsInSameNamespaceAs <EventRepository>()) .WithService.DefaultInterface() .Configure(c => c.LifeStyle.Transient .DependsOn(new { pageSize = 20 }))); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly().BasedOn <IController>().Configure(c => c.LifeStyle.Transient.Named(c.Implementation.Name)), Component.For <IPlugin>().ImplementedBy <TestingSystemPlugin>().LifeStyle.Is(Castle.Core.LifestyleType.Singleton), Component.For <ITestingService>().ImplementedBy <TestingService>().LifeStyle.Is(Castle.Core.LifestyleType.Singleton), Component.For <IMlcProxy>().ImplementedBy <MlcProxy>().LifeStyle.Is(Castle.Core.LifestyleType.Singleton)); }
public void Registreting_by_namespace_with_subnamespaces() { Kernel.Register( AllTypes.FromThisAssembly() .Where(Component.IsInNamespace("RootNamespace", includeSubnamespaces: true))); Assert.AreEqual(2, ComponentsCount()); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly() .BasedOn(typeof(IHandle <>)).WithService.FromInterface() .Configure(c => c.LifeStyle.Transient) ); }
public void Registreting_by_namespace_with_subnamespaces_properly_filters_out_namespaces_that_have_common_prefix() { Kernel.Register( AllTypes.FromThisAssembly() .Where(Component.IsInNamespace("RootNamespace", includeSubnamespaces: true))); Assert.IsFalse(Components().Any(c => c.ComponentModel.Services.Any(s => s.Namespace == "RootNamespaceEx"))); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly() .Pick() .WithService.DefaultInterfaces() .LifestyleTransient()); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly().BasedOn <IFoo>(), Classes.FromThisAssembly().BasedOn <IFoo>(), Castle.MicroKernel.Registration.Types.FromThisAssembly().BasedOn <IFoo>() ); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly().Where(Component.HasAttribute <MyAttribute>), Classes.FromThisAssembly().Where(Component.HasAttribute <MyAttribute>), Castle.MicroKernel.Registration.Types.FromThisAssembly().Where(Component.HasAttribute <MyAttribute>) ); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly() .BasedOn <IController>() .Configure(registration => registration.LifeStyle.Transient) ); }
public CastleControllerFactory(IWindsorContainer container) { _container = container; _container.Register( AllTypes.FromThisAssembly() .BasedOn <IController>() .Configure(c => c.LifestyleTransient())); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly().InNamespace("SomeNamespace", false), Classes.FromThisAssembly().InNamespace("SomeNamespace", false), Castle.MicroKernel.Registration.Types.FromThisAssembly().InNamespace("SomeNamespace", false) ); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( AllTypes.FromThisAssembly().Where(Component.IsInSameNamespaceAs <IInSomeNamespace>()), Classes.FromThisAssembly().Where(Component.IsInSameNamespaceAs <IInSomeNamespace>()), Castle.MicroKernel.Registration.Types.FromThisAssembly().Where(Component.IsInSameNamespaceAs <IInSomeNamespace>()) ); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register(AllTypes.FromThisAssembly() .BasedOn <IController>() .If(Component.IsInSameNamespaceAs <HomeController>()) .If(t => t.Name.EndsWith("Controller")) .Configure(c => c.LifeStyle.Transient)); }
public void Install(IWindsorContainer container, IConfigurationStore store) { container.Register( Component.For <IWindowManager>().ImplementedBy <WindowManager>().LifeStyle.Is(LifestyleType.Singleton)); container.Register( Component.For <IEventAggregator>().ImplementedBy <EventAggregator>().LifeStyle.Is(LifestyleType.Singleton)); container.Register(AllTypes.FromThisAssembly().Pick()); }