Eclipse Krazo — Events

Daniel Dias
Jul 17, 2019 · 2 min read
Barista Duke — [DOAG](https://www.doag.org/de/home/)

Neste post veremos os uso de Eventos(Events) no Eclipse Krazo .

Este também sera bem curto, pois é somente para conhecermos o uso do Evento.

Então vamos lá.

Os aplicativos MVC podem ser informados sobre eventos que ocorrem durante o processamento de uma solicitação.

Este mecanismo é baseado em eventos CDI que podem ser disparado por implementações e observado por aplicações.

Dentro do pacote javax.mvc.event contém vários tipos de eventos que devem ser adicionado por implementações durante o processamento de uma solicitação. A implementações podem estender este conjunto e também fornecer informações adicionais sobre qualquer um dos eventos definidos na especificação.

Em nossas aplicações é muito útil observar os eventos para aprendermos sobre o ciclo de vida de uma requisição, logging, monitoramento de performance,etc.

Na especificação temos 5 eventos que são :

  • BeforeControllerEvent
  • AfterControllerEvent
  • BeforeProcessViewEvent
  • AfterProcessViewEvent
  • ControllerRedirectEvent

Vejamos um exemplo utilizando o BeforeControllerEvent e AfterControllerEvent :

Aqui os método recebem a anotação @Observers do CDI e as interfaces como parâmetro.

Então quando formos executar nosso aplicativo, primeiro será disparado o onBeforeController que retorna a informação da URI requisitada .

Já a onAfterController ira retorna a informação sobre o Controller disparado :

De forma similar ao anterior , o uso do BeforeProcessViewEvent e AfterProcessViewEvent trazem informações sobre a View a ViewEngine :

tendo como saída :

O último evento suportado pelo MVC é ControllerRedirectEvent, que é disparado imediatamente antes da implementação do MVC retornar um código de status de redirecionamento.

Bem isso é tudo .

Código :

Daniel Dias

Software Engineering, Open Source Enthusiast. Apache and EclipseEE4J committer.

Daniel Dias

Software Engineering, Open Source Enthusiast. Apache and EclipseEE4J committer.

Daniel Dias

Written by

SouJava Board Member, JCP Member, JSR-371 (MVC 1.0), JSR-382 (Config) specifications contributor, EG JSR-385 (UoM) and Eclipse Committer .

Daniel Dias

Software Engineering, Open Source Enthusiast. Apache and EclipseEE4J committer.