container.Register(Component.For<IEventBus>().ImplementedBy<InProcessEventBus>().OnCreate((kernel, eventBus) => { (eventBus as InProcessEventBus).RegisterAllHandlersInAssembly(Assembly.GetAssembly(typeof(IHaveEventHandlers)), kernel.Resolve, kernel.ReleaseComponent);
var loginProvider = container.Resolve<ILoginProvider>();if (loginProvider.LoginProviderType == LoginProvider.DB_LoginProvider) (eventBus as InProcessEventBus).RegisterAllHandlersInAssembly(Assembly.GetAssembly(typeof(IHaveDbLoginProviderEventHandlers)), kernel.Resolve, kernel.ReleaseComponent); else if (loginProvider.LoginProviderType == LoginProvider.LDAP_LoginProvider) (eventBus as InProcessEventBus).RegisterAllHandlersInAssembly(Assembly.GetAssembly(typeof(IHaveLdapLoginProviderEventHandlers)), kernel.Resolve, kernel.ReleaseComponent); }));