Bosphorus.Dao.Core.Installer.Install C# (CSharp) Method

Install() protected method

protected Install ( IWindsorContainer container, IConfigurationStore store, FromTypesDescriptor allLoadedTypes ) : void
container IWindsorContainer
store IConfigurationStore
allLoadedTypes Castle.MicroKernel.Registration.FromTypesDescriptor
return void
        protected override void Install(IWindsorContainer container, IConfigurationStore store, FromTypesDescriptor allLoadedTypes)
        {
            container.AddFacility<TypedFactoryFacility>();
            //IsDefault composti'lerde zaten oluyor olmalı
            //Composite lerde from interface yettmiyor, all interfaces yap bari :( ya da explicit olarak şu interface diye söyle.

            container.Register(
                Compositor
                    .Of<IDefaultSessionProvider>()
                    .In(allLoadedTypes)
                    .ImplementedBy<CompositeDefaultSessionProvider>()
                    .IsDefault(),

                Compositor
                    .Of<IDefaultSessionAliasProvider>()
                    .In(allLoadedTypes)
                    .ImplementedBy<ChainedSessionAliasProvider>()
                    .IsDefault(),

                allLoadedTypes
                    .BasedOn<ISession>()
                    .WithService
                    .Self()
                    //.LifestyleCustom<SessionLifeStyleManager>()
                    .LifestyleScoped<ScopeAccessor>()
                    .Configure (registration => registration.UsingFactoryMethod(BuildSession)),

                Component
                    .For<ISessionLifeStyleProvider>()
                    .ImplementedBy<DefaultSessionLifeStyleProvider>()
                    .IsFallback()
            );
        }