/// <summary> /// Método Main /// </summary> public static void Main() { try { // Log de inicio Console.Title = "Point Blank - Core"; // Configurações Logger.Info("Carregando arquivo de configurações"); ConfigFile configFile = new ConfigFile(); // Banco de dados Logger.Info("Atualizando configurações do banco de dados"); SessionManager.Inicializar(configFile.DatabaseHost, configFile.DatabasePort, configFile.DatabaseUser, configFile.DatabasePassword, configFile.DatabaseName); // Obter nova sessão com banco de dados Logger.Info("Inicializando sessão com o banco de dados"); try { SessionManager.ObterNovaSessao(); } catch (Exception exp) { Logger.Error(exp, "Verifique as configurações de conexão com o banco de dados", false); return; } // Atualizar dados a partir da configuração Logger.Info("Atualizando configurações de conexões"); WcfNetwork.Inicializar(configFile.NetworkHost, configFile.NetworkPort); // Inicializar serviços (WCF) Logger.Info("Inicializando canais WCF"); foreach (ServiceType servico in ServiceList.ListaServicos) { WcfNetwork.IncluirCanalWcfHost(servico); } Logger.Info("Servidor Inicializado"); } catch (ThreadAbortException) { Logger.Error("Ocorreu um erro não tratado, todas as conexões serão finalizadas"); throw; } catch (Exception exp) { Logger.Error(exp, "Ocorreu um erro e com isso as conexões serão finalizadas", true); } finally { // Não finalizar o servidor Process.GetCurrentProcess().WaitForExit(); } }
/// <summary> /// Método Main /// </summary> /// <param name="args">Parâmetro args</param> public static void Main() { try { // Log de inicio Console.Title = "Point Blank - Auth"; // Configurações Logger.Info("Carregando arquivo de configurações"); ConfigFile configFile = new ConfigFile(); // Inicializar controles do WCF WcfNetwork.Inicializar(configFile.CoreHost, configFile.CorePort); // Validar Conexão try { WcfNetwork.ValidarConexao(configFile.CoreHost, configFile.CorePort); } catch (Exception exp) { Logger.Error(exp, "Validar conexão com servidor (Core)", false); return; } // Criar/Verificar estrutura padrão Logger.Info("Verificando necessidade de criação dos servidores"); FactoryBo.GameServer(bo => bo.CriarEstruturaPadrao(configFile.NetworkHost, configFile.NetworkPort)); // Teste IList <GameServer> listaTmp = FactoryBo.GameServer(bo => bo.ObterRelacaoTodos()); // Inciar serviços do servidor new GameNetwork(configFile.NetworkHost, configFile.NetworkPort, configFile.ShowHex); } catch (ThreadAbortException) { Logger.Error("Ocorreu um erro não tratado, todas as conexões serão finalizadas"); throw; } catch (Exception exp) { Logger.Error(exp, "Ocorreu um erro e com isso as conexões serão finalizadas", true); } finally { Process.GetCurrentProcess().WaitForExit(); } }
/// <summary> /// Método Main /// </summary> /// <param name="args">Parâmetro args</param> public static void Main() { try { // Log de inicio Console.Title = "Point Blank - Game"; // Configurações Logger.Info("Carregando arquivo de configurações"); ConfigFile configFile = new ConfigFile(); // Inicializar controles do WCF WcfNetwork.Inicializar(configFile.CoreHost, configFile.CorePort); // Validar Conexão try { WcfNetwork.ValidarConexao(configFile.CoreHost, configFile.CorePort); } catch (Exception exp) { Logger.Error(exp, "Validar conexão com servidor (Core)", false); return; } // Inciar serviços do servidor new GameNetwork(configFile.NetworkHost, configFile.NetworkPort, configFile.ShowHex); } catch (ThreadAbortException) { Logger.Error("Ocorreu um erro não tratado, todas as conexões serão finalizadas"); throw; } catch (Exception exp) { Logger.Error(exp, "Ocorreu um erro e com isso as conexões serão finalizadas", true); } finally { Process.GetCurrentProcess().WaitForExit(); } }