US4001 - ArthurSchiavom/gestao-informacao-chao-de-fabrica--projeto-academico GitHub Wiki
=======================================
O Serviço de Processamento de Mensagens (SPM) pretende efetuar o processamento das mensagens disponiveis no sistema.
Inicia o processo de importar os ficheiros existentes no sistema.Inicio da importacao.Final da importacao.
Note-se que o repositório é obtido através de PersistenceContext.repositories().produto() e que o persistenceContext é obtido através de PersistenceContext.repositories().newTransactionalContext(), que é a metodologia utilizada em toda a aplicação sempre que um repositório é necessário.
- Repository Pattern - MensagemRepository.
- Factory Method - Para a instanciação de objetos do domínio.
- Simple Factory - Na instanciação de repositórios, como em PersistenceContext.repositories().mensagem() e no metodo getMessageType onde obtem uma instancia de uma mensagem (MessageFactory).
- Controller - ImportarMensagensExistentesSistemaController
- Polymorphism & Template method - Usado na implementação do repositório específico de cada entidade bem como na implementação da UI específica deste caso de uso.
- Dependency inversion & Protected variation & Strategy - JpaMensagemRepository é utilizado como uma instância da interface MensagemRepository.
- Liskov Substitution principle & Dependency inversion - Em todas as implementações de interfaces e extensões de classes.
- Pure fabrication - Controller e UI.
- Information expert & HC/LC - Sempre presente: cada classe tem uma responsabilidade bem definida, visando a sua independência de outras classes.
- Singleton - Utilizado na MensagemFactory
- Facade - Interface para o utilizador


