diff options
| author | Lucas Faria Mendes <lucas.fariamo08@gmail.com> | 2026-03-30 13:38:18 +0000 |
|---|---|---|
| committer | Lucas Faria Mendes <lucas.fariamo08@gmail.com> | 2026-03-30 13:38:18 +0000 |
| commit | 1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1 (patch) | |
| tree | e1c3b20ea08f0cf71122a1e73f0d395f8fd83874 /Gestor.Infrastructure/Gestor.Infrastructure.Configuration/SessionFactory.cs | |
| parent | 674ca83ba9243a9e95a7568c797668dab6aee26a (diff) | |
| download | gestor-1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1.tar.gz gestor-1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1.zip | |
chore: location
Diffstat (limited to 'Gestor.Infrastructure/Gestor.Infrastructure.Configuration/SessionFactory.cs')
| -rw-r--r-- | Gestor.Infrastructure/Gestor.Infrastructure.Configuration/SessionFactory.cs | 144 |
1 files changed, 0 insertions, 144 deletions
diff --git a/Gestor.Infrastructure/Gestor.Infrastructure.Configuration/SessionFactory.cs b/Gestor.Infrastructure/Gestor.Infrastructure.Configuration/SessionFactory.cs deleted file mode 100644 index 236c026..0000000 --- a/Gestor.Infrastructure/Gestor.Infrastructure.Configuration/SessionFactory.cs +++ /dev/null @@ -1,144 +0,0 @@ -using FluentNHibernate.Cfg;
-using FluentNHibernate.Cfg.Db;
-using Gestor.Infrastructure.Entities.Seguros;
-using NHibernate;
-using NHibernate.Cfg;
-using NHibernate.Connection;
-using NHibernate.Impl;
-using NHibernate.Mapping;
-using NHibernate.Tool.hbm2ddl;
-using System;
-using System.ComponentModel;
-using System.Data.SqlClient;
-using System.Linq;
-using System.Runtime.CompilerServices;
-
-namespace Gestor.Infrastructure.Configuration
-{
- public class SessionFactory
- {
- private static ISessionFactory _sessionFactory;
-
- private static string ConnectionString
- {
- get;
- set;
- }
-
- public static bool Retry
- {
- get;
- set;
- }
-
- private static ISessionFactory Session
- {
- get
- {
- object connection;
- SessionFactoryImpl sessionFactoryImpl = SessionFactory._sessionFactory as SessionFactoryImpl;
- if (sessionFactoryImpl != null)
- {
- connection = sessionFactoryImpl.ConnectionProvider.GetConnection();
- }
- else
- {
- connection = null;
- }
- SqlConnection sqlConnection = connection as SqlConnection;
- SqlConnection sqlConnection1 = new SqlConnection(SessionFactory.ConnectionString);
- if (sqlConnection == null || sqlConnection.Database != sqlConnection1.Database)
- {
- SessionFactory.Initialize();
- }
- sqlConnection1.Dispose();
- return SessionFactory._sessionFactory;
- }
- }
-
- public SessionFactory()
- {
- }
-
- private static NHibernate.Cfg.Configuration BuildConfiguration()
- {
- MsSqlConfiguration msSqlConfiguration = MsSqlConfiguration.MsSql2012.ConnectionString(SessionFactory.ConnectionString).ShowSql();
- return Fluently.Configure().Database(msSqlConfiguration).Mappings((MappingConfiguration m) => m.FluentMappings.AddFromAssemblyOf<ClienteMap>()).ExposeConfiguration((NHibernate.Cfg.Configuration cfg) => (new SchemaUpdate(cfg)).Execute(false, true)).BuildConfiguration();
- }
-
- private static void BuildSessionFactory(bool withDelete = false)
- {
- SessionFactory._sessionFactory = SessionFactory.ConfigurationFile(withDelete).BuildSessionFactory();
- }
-
- private static FluentConfiguration ConfigurationFile(bool withDelete)
- {
- NHibernate.Cfg.Configuration configuration;
- ConfigurationFileCache configurationFileCache = new ConfigurationFileCache(SessionFactory.ConnectionString);
- if (withDelete)
- {
- configurationFileCache.DeleteCacheFile();
- }
- NHibernate.Cfg.Configuration configuration1 = configurationFileCache.LoadConfigurationFromFile();
- configuration1 = SessionFactory.FixConfiguration(configuration1);
- if (configuration1 != null)
- {
- configuration = configuration1;
- configuration.SetProperty("connection.connection_string", SessionFactory.ConnectionString);
- }
- else
- {
- configuration = SessionFactory.BuildConfiguration();
- configurationFileCache.SaveConfigurationToFile(configuration);
- }
- return Fluently.Configure(configuration);
- }
-
- private static NHibernate.Cfg.Configuration FixConfiguration(NHibernate.Cfg.Configuration cachedConfiguration)
- {
- NHibernate.Cfg.Configuration configuration;
- if (cachedConfiguration == null)
- {
- return cachedConfiguration;
- }
- Type type = typeof(ClienteDb);
- if (cachedConfiguration.ClassMappings.Any<PersistentClass>((PersistentClass x) => x.EntityName == type.FullName))
- {
- configuration = cachedConfiguration;
- }
- else
- {
- configuration = null;
- }
- cachedConfiguration = configuration;
- return cachedConfiguration;
- }
-
- public static void Initialize()
- {
- if (SessionFactory.ConnectionString == null)
- {
- throw new ArgumentNullException();
- }
- try
- {
- SessionFactory.BuildSessionFactory(false);
- }
- catch (Exception exception)
- {
- SessionFactory.BuildSessionFactory(true);
- }
- }
-
- public static ISession OpenSession(string connectionString)
- {
- SessionFactory.ConnectionString = connectionString;
- ISessionFactory session = SessionFactory.Session;
- if (session != null)
- {
- return session.OpenSession();
- }
- return null;
- }
- }
-}
\ No newline at end of file |