RFW

De Wiki do Leitão
Revisão de 22h46min de 18 de julho de 2023 por Rodrigogml (discussão | contribs)
Ir para: navegação, pesquisa

A classe estática RFW tem a finalidade de acumular configurações e métodos auxiliares para todos os módulos e implementação da aplicação. Como, por exemplo, métodos para retornar a data do sistema e formato, localidade, sistema de arredondamento de cálculos, flags de inicialização e desligamento do sistema, etc..


Ao concentrar métodos de configuração em uma única classe, ganhamos em manutenção quando desejamos fazer alterações desse tipo em todo o sistema.

Inicialização do Framework

Para simplificar a configuração inicial do RFW, a classe conta com uma coleção de métodos initialize*() que destacam as funções que podem/devem ser chamadas para inicializar o RFW. Desta forma, a medida que o framework ganhe novas funcionalidade, novos métodos com este prefixo serão criados.


Ao implementar o sistema, o desenvolvedor deve chamar esses métodos de inicialização logo que a aplicação "levanta". E devem ser chamados uma única vez. Se o sistema todo procurar as informações dessa classe, uma alteração em seus atributos terão o efeito total e em tempo de execução do sistema.


Métodos para o Desenvolvimento

Esta classe também conta com métodos para auxiliar no desenvolvimento. Entre eles estão:

  • isDevelopmentEnvironment() - que indica que o sistema está rodando em um ambiente de desenvolvimento ou produção. Utilizado para diferenciar blocos de execução do código, e talvez evitar que códigos de teste sejam acidentalmente esquecidos e executados na produção.
  • pDev(...) - permite a impressão no console com o System.out.println(), somente quando estiver no ambiente de desenvolvimento.


Shutting Down the Framework

Quando a aplicação for encerrada o método .shutdownRFW() deve ser chamado. Assim o RFW sinalizará para todos os módulos que suas threads e funcionamento precisam ter finalizados sem perda ou corrupção de dados.

A aplicação sendo desenvolvida pode monitorar essa flag para saber se o sistema está sendo finalizado (undeploy, por exemplo) e parar de aceitar novas solicitações/requisições e encerrar suas thread.