using Gestor.Application; using Gestor.Common.Helpers; using Gestor.Infrastructure.UnitOfWork.Generic; using Gestor.Infrastructure.UnitOfWork.Logic; using System; using System.IO; using System.Runtime.CompilerServices; using System.Threading.Tasks; namespace Gestor.Application.Helpers { public class Instancia { public static string Conexao; public static Gestor.Application.App App { get; set; } public static UnitOfWork Commited { get { return Instancia.UnitOfWork(true); } } public static UnitOfWork Read { get { return Instancia.UnitOfWork(false); } } public Instancia() { } public static void DeleteCfg() { string str = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Data"); string str1 = string.Concat(Connection.Catalog, ".cfg"); if (File.Exists(string.Concat(str, str1))) { File.Delete(string.Concat(str, str1)); } } public static void ExcluirCfg() { File.Delete(string.Concat("Data_", Connection.Catalog, ".cfg")); File.Delete(string.Concat("File_", Connection.Catalog, ".cfg")); File.Delete(string.Concat("Sign_", Connection.Catalog, ".cfg")); } private static UnitOfWork UnitOfWork(bool withTransaction = true) { DataBaseParameters.set_NovoGestor(true); Instancia.Conexao = Instancia.Conexao ?? Connection.GetConnection(true); if (Instancia.Conexao == null) { return Instancia.App.ConnectionRetry().Result; } UnitOfWork unitOfWork = new UnitOfWork(Instancia.Conexao, withTransaction); if (unitOfWork.get_HasSession()) { return unitOfWork; } return Instancia.App.ConnectionRetry().Result; } } }