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()
);
}