Fluxo de Informação
Quando o usuário requisita uma página contendo interfaces DOUI, ocorre resumidamente a seguinte seqüência de operações:
- Usuário requisita a página ao LumisXP Server (Front controller);
- O LumisXP Server, por tratar-se de uma requisição de página, delega o processamento ao PresentationController, responsável pela renderização de páginas do portal;
- O PresentationController determina quais interfaces e respectivos serviços compõem a página requisitada, e solicita ao ServiceContainer a renderização de cada interface;
- O ServiceContainer constata que trata-se de interfaces DOUI e solicita a classeDouiServiceInterface que renderize a interface;
- A classe
DouiServiceInterface
executa o ciclo de vida de uma interface DOUI, asaber:No processo de process action:
- Os sources, controles e process actions são instanciados;
- Os controles restauram seu estado, lendo do Request ou populados pelos sources. Controles podem injetar parâmetros nos sources, para, por exemplo, servirem de filtros;
- Os controles injetam seus valores como parâmetros nos process actions;
- Os process actions e seus respectivos process action handlers são executados, retornando opcionalmente parâmetros de renderização.
No processo de render (renderização):
- Os sources e controles são instanciados;
- Os controles restauram seu estado, lendo do Request ou populados pelos sources. Controles podem injetar parâmetros nos sources, para, por exemplo, servirem de filtros;
- Os controles atualizam o XML da interface com seus valores;
- O PresentationController utiliza o XSL da interface para transformar o XML em HTML;
- O PresentationController retorna o HTML para o browser do usuário.
A figura abaixo resume o fluxo da informação do DOUI framework: