/// <summary>
        /// .ctor with all dependencies
        /// </summary>
        /// <param name="nhibernateSessionManager"></param>
        /// <param name="eventRouter"></param>
        public HibernateUnitOfWork(
            IHibernateSessionManager nhibernateSessionManager,
            IDomainEventBus eventRouter)
        {
            _nhibernateSessionManager = nhibernateSessionManager;
            _nhibernateSessionManager.OpenSession();

            _eventRouter = eventRouter;
        }
 /// <summary>
 /// .ctor. All deps are in ctor
 /// </summary>
 /// <param name="sessionFactory"></param>
 /// <param name="sessionManager"></param>
 /// <param name="eventRouter"></param>
 public HibernateUnitOfWorkFactory(
     ISessionFactory sessionFactory,
     IHibernateSessionManager sessionManager,
     IDomainEventBus eventRouter)
 {
     _sessionFactory = sessionFactory;
     _sessionManager = sessionManager;
     _eventRouter = eventRouter;
 }
 public HibernateAccountRepository(IHibernateSessionManager sessionManager)
 {
     _sessionManager = sessionManager;
 }
 /// <summary>
 /// .Ctor with all dependencies
 /// </summary>
 /// <param name="sessionManager"></param>
 public HibernateAccountingTransactionRepository(IHibernateSessionManager sessionManager)
 {
     _sessionManager = sessionManager;
 }