Example #1
0
        public static Configuration AddConfiguration(string factoryKey, string[] mappingAssemblies, string cfgFile, IDictionary <string, string> cfgProperties, string validatorCfgFile)
        {
            Configuration config;
            var           configCache = NHibernateSession.ConfigurationCache;

            if (configCache != null)
            {
                config = configCache.LoadConfiguration(factoryKey, cfgFile, mappingAssemblies);
                if (config != null)
                {
                    var sessionFactory = config.BuildSessionFactory();
                    SessionFactories.Add(factoryKey, sessionFactory);
                    return(NHibernateSession.AddConfiguration(factoryKey, sessionFactory, config, validatorCfgFile));
                }
            }

            config = AddConfiguration(factoryKey, mappingAssemblies,
                                      ConfigureNHibernate(cfgFile, cfgProperties),
                                      validatorCfgFile);

            if (configCache != null)
            {
                configCache.SaveConfiguration(factoryKey, config);
            }

            return(config);
        }
Example #2
0
        public static Configuration AddConfiguration(string factoryKey, string[] mappingAssemblies, Configuration cfg, string validatorCfgFile)
        {
            var sessionFactory = CreateSessionFactoryFor(mappingAssemblies, cfg);

            Check.Require(
                !SessionFactories.ContainsKey(factoryKey),
                "A session factory has already been configured with the key of " + factoryKey);
            SessionFactories.Add(factoryKey, sessionFactory);

            return(NHibernateSession.AddConfiguration(factoryKey, sessionFactory, cfg, validatorCfgFile));
        }