예제 #1
0
        private DiagnosticInfo CheckProvider(ISessionFactoryProvider prov)
        {
            try
            {
                var sessionFactory = _sessionFactoryManager.GetSessionFactory(prov.Nick);
                using (var session = sessionFactory.OpenSession())
                {
                    if (prov.IsSkipHealthCheckEntity)
                    {
                        Logger.LogDiagnostic($"Orm provider with nick {prov.Nick} has been diagnosed successfully");
                        return(new DiagnosticInfo($"DB: {prov.Nick}", string.Empty));
                    }

                    var allClassMetadata = session.SessionFactory.GetAllClassMetadata();
                    foreach (var entity in allClassMetadata)
                    {
                        Logger.LogDiagnostic($"Diagnose the orm entity {entity.Key}");
                        session.CreateCriteria(entity.Key)
                        .SetTimeout(DiagnosticTimeout)
                        .SetMaxResults(1)
                        .List();
                        Logger.LogDiagnostic($"Orm entity {entity.Key} has been diagnosed successfully");
                    }
                }

                Logger.LogDiagnostic($"Orm provider with nick {prov.Nick} has been diagnosed successfully");
                return(new DiagnosticInfo($"DB: {prov.Nick}", string.Empty));
            }
            catch (Exception e)
            {
                Logger.LogDiagnostic($"Diagnostic of orm provider with nick {prov.Nick} has been failed with error: {e}");
                return(new DiagnosticInfo($"DB: {prov.Nick}", string.Empty, DiagnosticStatus.DbConnectionError, string.Empty, e.ToString()));
            }
        }
예제 #2
0
 public DefaultCategoryNodeService(IRepository repository, ICmsConfiguration cmsConfiguration, ISessionFactoryProvider sessionFactoryProvider, IUnitOfWork unitOfWork)
 {
     Repository                  = repository;
     this.cmsConfiguration       = cmsConfiguration;
     this.sessionFactoryProvider = sessionFactoryProvider;
     this.unitOfWork             = unitOfWork;
 }
 public NHibernateHelper()
 {
     _sessionFactory = Ioc.Create <ISessionFactoryProvider>();
     _nhProvider     = Ioc.Create <IServiceProvider>();
     TraceId         = Guid.NewGuid().ToString();
     Logger.Info($"Data: {DateTime.Now} Trace {TraceId} Iniciando NHibernateHelper");
 }
 public DefaultCategoryNodeService(IRepository repository, ICmsConfiguration cmsConfiguration, ISessionFactoryProvider sessionFactoryProvider, IUnitOfWork unitOfWork)
 {
     Repository = repository;
     this.cmsConfiguration = cmsConfiguration;
     this.sessionFactoryProvider = sessionFactoryProvider;
     this.unitOfWork = unitOfWork;
 }
예제 #5
0
 public CreateTaskBoard(ISessionFactoryProvider sessionFactoryProvider, IEventAggregator bus, 
     IDialogDisplayer dialogDisplayer)
 {
     _sessionFactoryProvider = sessionFactoryProvider;
     _bus = bus;
     _dialogDisplayer = dialogDisplayer;
 }
 public DefaultUnitOfWork(ISessionFactoryProvider sessionFactoryProvider)
 {
     this.Init();
     this.sessionFactoryProvider = sessionFactoryProvider;
     // this.session = Session;
     transaction = null;
 }
        /// <summary>
        ///     Creates a new instance of <see cref="NhUnitOfWork" />.
        /// </summary>
        public NhUnitOfWork(IUnitOfWorkDefaultOptions defaultOptions, IUnitOfWorkFilterExecuter filterExecuter, ISessionFactoryProvider sessionFactoryProvider)
            : base(defaultOptions, filterExecuter)
        {
            _sessionFactoryProvider = sessionFactoryProvider;

            ActiveSessions     = new Dictionary <string, ISession>();
            ActiveTransactions = new Dictionary <string, ActiveTransactionInfo>();
        }
 public void Init(HttpApplication context)
 {
     app = context;
     sfp = (ISessionFactoryProvider)
               context.Application[SessionFactoryProvider.Key];
     context.BeginRequest += ContextBeginRequest;
     context.EndRequest += ContextEndRequest;
 }
예제 #9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DefaultMediaImageService" /> class.
 /// </summary>
 /// <param name="mediaFileService">The media file service.</param>
 /// <param name="storageService">The storage service.</param>
 /// <param name="repository">The repository.</param>
 /// <param name="unitOfWork">The unit of work.</param>
 /// <param name="sessionFactoryProvider">The session factory provider.</param>
 public DefaultMediaImageService(IMediaFileService mediaFileService, IStorageService storageService, IRepository repository, ISessionFactoryProvider sessionFactoryProvider, IUnitOfWork unitOfWork)
 {
     this.mediaFileService       = mediaFileService;
     this.sessionFactoryProvider = sessionFactoryProvider;
     this.storageService         = storageService;
     this.repository             = repository;
     this.unitOfWork             = unitOfWork;
 }
 public void Init(HttpApplication context)
 {
     app = context;
     sfp = (ISessionFactoryProvider)
           context.Application[SessionFactoryProvider.Key];
     context.BeginRequest += ContextBeginRequest;
     context.EndRequest   += ContextEndRequest;
 }
예제 #11
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DefaultMediaImageService" /> class.
 /// </summary>
 /// <param name="mediaFileService">The media file service.</param>
 /// <param name="storageService">The storage service.</param>
 /// <param name="repository">The repository.</param>
 /// <param name="unitOfWork">The unit of work.</param>
 /// <param name="sessionFactoryProvider">The session factory provider.</param>
 public DefaultMediaImageService(IMediaFileService mediaFileService, IStorageService storageService, IRepository repository, ISessionFactoryProvider sessionFactoryProvider, IUnitOfWork unitOfWork)
 {
     this.mediaFileService = mediaFileService;
     this.sessionFactoryProvider = sessionFactoryProvider;
     this.storageService = storageService;
     this.repository = repository;
     this.unitOfWork = unitOfWork;
 }
예제 #12
0
        static Singleton()
        {
            UnityContainer = CreateUnityContainer();
            SessionFactoryProvider = UnityContainer.Resolve<ISessionFactoryProvider>();
            UnitOfWorkFactory = UnityContainer.Resolve<IUnitOfWorkFactory>();
            ConfigurationLoaderService = UnityContainer.Resolve<IConfigurationLoaderService>();

            TestDataProvider = new RandomTestDataProvider();
        }
예제 #13
0
        public SessionProvider(ISessionFactoryProvider sessionFactoryProvider)
        {
            if (sessionFactoryProvider == null)
            {
                throw new ArgumentNullException(nameof(sessionFactoryProvider));
            }

            Session = sessionFactoryProvider.SessionFactory.OpenStatelessSession();
        }
예제 #14
0
        public SessionFactory(ISessionFactoryProvider sessionFactoryProvider)
        {
            if (sessionFactoryProvider == null)
            {
                throw new ArgumentNullException(nameof(sessionFactoryProvider));
            }

            _sessionFactoryProvider = sessionFactoryProvider;
        }
예제 #15
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DefaultMediaFileService" /> class.
 /// </summary>
 /// <param name="storageService">The storage service.</param>
 /// <param name="repository">The repository.</param>
 /// <param name="unitOfWork">The unit of work.</param>
 /// <param name="configuration">The configuration.</param>
 /// <param name="httpContextAccessor">The HTTP context accessor.</param>
 /// <param name="sessionFactoryProvider">The session factory provider.</param>
 public DefaultMediaFileService(IStorageService storageService, IRepository repository, IUnitOfWork unitOfWork,
                                ICmsConfiguration configuration, IHttpContextAccessor httpContextAccessor, ISessionFactoryProvider sessionFactoryProvider)
 {
     this.sessionFactoryProvider = sessionFactoryProvider;
     this.httpContextAccessor    = httpContextAccessor;
     this.configuration          = configuration;
     this.unitOfWork             = unitOfWork;
     this.storageService         = storageService;
     this.repository             = repository;
 }
예제 #16
0
 protected override void Context()
 {
     _sessionFactoryProvider = A.Fake <ISessionFactoryProvider>();
     _templateFileName       = FileHelper.GenerateTemporaryFileName();
     CreateFile(_templateFileName);
     _fileNameToCreate = FileHelper.GenerateTemporaryFileName();
     _sessionFactory   = A.Fake <ISessionFactory>();
     A.CallTo(() => _sessionFactoryProvider.InitalizeSessionFactoryFor(_fileNameToCreate)).Returns(_sessionFactory);
     sut = new SessionManager(_sessionFactoryProvider);
 }
 public NhConversation(ISessionFactoryProvider factoriesProvider, ISessionWrapper wrapper)
 {
     if (factoriesProvider == null)
     {
         throw new ArgumentNullException("factoriesProvider");
     }
     if (wrapper == null)
     {
         throw new ArgumentNullException("wrapper");
     }
     this.factoriesProvider = factoriesProvider;
     Wrapper = wrapper;
 }
        public void Init(HttpApplication context)
        {
            log.Debug("Obtaining SessionFactoryProvider from Application context.");

            sfp = context.Application[Commons.SessionFactoryProviderKey] as ISessionFactoryProvider;
            if (sfp == null)
            {
                throw new HibernateException("Couldn't obtain SessionFactoryProvider from WebApplicationContext.");
            }
            HttpContext.Current.Items[EndOfConversationMarkerKey] = true;
            context.PreRequestHandlerExecute  += Context_PreRequestHandlerExecute;
            context.PostRequestHandlerExecute += Context_PostRequestHandlerExecute;
        }
예제 #19
0
		public DefaultConversationFactory(ISessionFactoryProvider factoriesProvider, ISessionWrapper wrapper)
		{
			if (factoriesProvider == null)
			{
				throw new ArgumentNullException("factoriesProvider");
			}
			if (wrapper == null)
			{
				throw new ArgumentNullException("wrapper");
			}
			this.factoriesProvider = factoriesProvider;
			this.wrapper = wrapper;
		}
예제 #20
0
        public void Init(HttpApplication context)
        {
            log.Debug("Obtaining SessionFactoryProvider from Application context.");

            sfp = context.Application[Commons.SessionFactoryProviderKey] as ISessionFactoryProvider;
            if (sfp == null)
            {
                throw new HibernateException("Couldn't obtain SessionFactoryProvider from WebApplicationContext.");
            }

            context.BeginRequest += ApplicationBeginRequest;
            context.EndRequest   += ApplicationEndRequest;
        }
예제 #21
0
		public NhConversation(ISessionFactoryProvider factoriesProvider, ISessionWrapper wrapper, string id)
			: base(id)
		{
			if (factoriesProvider == null)
			{
				throw new ArgumentNullException("factoriesProvider");
			}
			if (wrapper == null)
			{
				throw new ArgumentNullException("wrapper");
			}
			this.factoriesProvider = factoriesProvider;
			Wrapper = wrapper;
		}
예제 #22
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DefaultMediaFileService" /> class.
 /// </summary>
 /// <param name="storageService">The storage service.</param>
 /// <param name="repository">The repository.</param>
 /// <param name="unitOfWork">The unit of work.</param>
 /// <param name="configuration">The configuration.</param>
 /// <param name="httpContextAccessor">The HTTP context accessor.</param>
 /// <param name="sessionFactoryProvider">The session factory provider.</param>
 /// <param name="mediaFileUrlResolver">The media file URL resolver.</param>
 /// <param name="securityService">The security service.</param>
 /// <param name="cacheService">The cache service.</param>
 /// <param name="accessControlService">The access control service.</param>
 public DefaultMediaFileService(IStorageService storageService, IRepository repository, IUnitOfWork unitOfWork,
                                ICmsConfiguration configuration, IHttpContextAccessor httpContextAccessor, ISessionFactoryProvider sessionFactoryProvider,
                                IMediaFileUrlResolver mediaFileUrlResolver, ISecurityService securityService, ICacheService cacheService,
                                IAccessControlService accessControlService)
 {
     this.sessionFactoryProvider = sessionFactoryProvider;
     this.httpContextAccessor    = httpContextAccessor;
     this.configuration          = configuration;
     this.unitOfWork             = unitOfWork;
     this.storageService         = storageService;
     this.repository             = repository;
     this.mediaFileUrlResolver   = mediaFileUrlResolver;
     this.securityService        = securityService;
     this.cacheService           = cacheService;
     this.accessControlService   = accessControlService;
 }
예제 #23
0
        internal ApproachService(
            Func <ISessionFactory, IApproachRepository> approachRepositoryFactory,
            Func <ISessionFactory, IEsaRepository> esaRepositoryFactory,
            ISessionFactoryProvider sessionFactoryProvider,
            IDeviationObserver deviationObserver,
            IDeviationFactory deviationFactory,
            IEsaDtoBuilder builder,
            IEsaFactory factory)
        {
            if (approachRepositoryFactory == null)
            {
                throw new ArgumentNullException("approachRepositoryFactory");
            }
            if (esaRepositoryFactory == null)
            {
                throw new ArgumentNullException("esaRepositoryFactory");
            }
            if (sessionFactoryProvider == null)
            {
                throw new ArgumentNullException("sessionFactoryProvider");
            }
            if (deviationObserver == null)
            {
                throw new ArgumentNullException("deviationObserver");
            }
            if (deviationFactory == null)
            {
                throw new ArgumentNullException("deviationFactory");
            }
            if (builder == null)
            {
                throw new ArgumentNullException("builder");
            }
            if (factory == null)
            {
                throw new ArgumentNullException("factory");
            }

            ISessionFactory sessionFactory = sessionFactoryProvider.ForWorkspace();

            this.approachRepository = approachRepositoryFactory.Invoke(sessionFactory);
            this.esaRepository      = esaRepositoryFactory.Invoke(sessionFactory);
            this.deviationFactory   = deviationFactory;
            this.deviationObserver  = deviationObserver;
            this.builder            = builder;
            this.factory            = factory;
        }
예제 #24
0
 public NhSessionPerCallContextBehavior(ISessionFactoryProvider sessionFactoryProvider)
 {
     sfp = sessionFactoryProvider;
 }
예제 #25
0
 public NotifiableConversationFactory(ISessionFactoryProvider factoriesProvider, ISessionWrapper wrapper)
 {
     this.factoriesProvider = factoriesProvider;
     this.wrapper           = wrapper;
 }
예제 #26
0
 public DefaultUnitOfWork(ISession session)
 {
     this.session = session;
     sessionFactoryProvider = null;
     transaction = null;
 }
예제 #27
0
 protected SessionProviderBase(ISessionFactoryProvider sessionFactoryProvider)
 {
     _sessionFactoryProvider = sessionFactoryProvider;
 }
예제 #28
0
 public Repository(ISessionFactoryProvider sessionFactoryProvider)
     : base(sessionFactoryProvider)
 {
 }
예제 #29
0
 public virtual void SetUp()
 {
     SessionFactoryProvider = new SessionFactoryProvider(DbFile, overwriteExisting: true);
     SessionProvider        = new SessionProvider(SessionFactoryProvider);
 }
예제 #30
0
 public DefaultUnitOfWork(ISession session)
 {
     this.session           = session;
     sessionFactoryProvider = null;
     transaction            = null;
 }
예제 #31
0
 public BoardItemsRepository(ISessionFactoryProvider sessionFactoryProvider)
 {
     _sessionFactoryProvider = sessionFactoryProvider;
 }
예제 #32
0
 public Conversation(ISessionFactoryProvider provider, ISessionWrapper wrapper, string conversationId)
     : base(provider, wrapper, conversationId)
 {
     _provider = provider;
     _wrapper = wrapper;
 }
 public UnitOfWorkFactory(ISessionFactoryProvider sessionFactoryProvider)
 {
     this.sessionFactoryProvider = sessionFactoryProvider;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="NHibernateSessionCallContextInitializer"/> class.
 /// </summary>
 /// <param name="sessionFactoryProvider">The session factory provider.</param>
 public NHibernateSessionCallContextInitializer( ISessionFactoryProvider sessionFactoryProvider )
 {
     _sessionFactoryProvider = sessionFactoryProvider;
 }
예제 #35
0
 public NHibernateInformationService(ISessionFactoryProvider sessionFactoryProvider)
 {
     _sessionFactory = sessionFactoryProvider.GetFactory(null);
 }
 public SimpleSessionProvider(ISessionFactoryProvider sessionFactoryProvider)
 {
     _sessionFactoryProvider = sessionFactoryProvider;
 }
예제 #37
0
 public SessionProvider(ISessionFactoryProvider sessionFactoryProvider)
 {
     session = new Lazy <ISession>(() => sessionFactoryProvider.SessionFactory.OpenSession());
 }
예제 #38
0
 public SessionManager(ISessionFactoryProvider sessionFactoryProvider)
 {
     _sessionFactoryProvider = sessionFactoryProvider;
 }
예제 #39
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SessionProvider"/> class.
 /// </summary>
 /// <param name="sessionFactoryProvider">The session factory provider.</param>
 public SessionProvider( ISessionFactoryProvider sessionFactoryProvider )
 {
     _sessionFactoryProvider = sessionFactoryProvider;
 }
 public UnitOfWork(ISessionFactoryProvider sessionFactoryProvider)
 {
     this.sessionFactoryProvider = sessionFactoryProvider;
     session = null;
     transaction = null;
 }
 public DefaultUnitOfWorkFactory(ISessionFactoryProvider sessionFactoryProvider)
 {
     this.sessionFactoryProvider = sessionFactoryProvider;
 }
예제 #42
0
 public UnitOfWork(ISessionFactoryProvider sessionFactoryProvider)
 {
     this.sessionFactoryProvider = sessionFactoryProvider;
     this.session     = null;
     this.transaction = null;
 }
		public NhConversationsContainerAccessor(ISessionFactoryProvider sessionFactoryProvider)
			: this((IEnumerable<ISessionFactory>) sessionFactoryProvider) {}
예제 #44
0
 protected SessionProviderBase(ISessionFactoryProvider sessionFactoryProvider)
 {
     _sessionFactoryProvider = sessionFactoryProvider;
 }
 public NHibernateInformationService( ISessionFactoryProvider sessionFactoryProvider )
 {
     _sessionFactory = sessionFactoryProvider.GetFactory ( null );
 }
예제 #46
0
 public Conversation(ISessionFactoryProvider provider, ISessionWrapper wrapper, string conversationId) : base(provider, wrapper, conversationId)
 {
     _provider = provider;
     _wrapper  = wrapper;
 }
 public GenericRepositoryBase(ISessionFactoryProvider sessionFactoryProvider)
 {
     session = sessionFactoryProvider.Open();
 }