Introdução
Nos posts anteriores analisamos uma série de eventos, nesse post vou concentrar nos eventos de antes e após uma ação de confirmação do CRUD. Por exemplo, antes de gravar a inclusão, após gravar inclusão, antes gravar alteração, após gravar alteração, etc..
@JArchEventBeforeSaveInsert
Esse evento é disparado antes de chamar o método para salvar a entidade no contexto de persistência, quando o tipo de CRUD for inclusão ou clonagem.
Segue um exemplo:
1 2 3 4 5 | public class LancamentoEventosAntesDepoisCrudObserver { private void antesInclusao(@Observes @JArchEventBeforeSaveInsert LancamentoEntity lancamento) { LogUtils.generate("Antes da inclusão"); } |
@JArchEventAfterSaveInsert
Esse evento é disparado após chamar o método para salvar a entidade no contexto de persistência, quando o tipo de CRUD for inclusão ou clonagem.
Segue um exemplo:
1 2 3 4 5 | public class LancamentoEventosAntesDepoisCrudObserver { private void depoisInclusao(@Observes @JArchEventAfterSaveInsert LancamentoEntity lancamento) { LogUtils.generate("Depois da inclusão"); } |
@JArchEventBeforeSaveChange
Esse evento é disparado antes chamar o método para salvar a entidade no contexto de persistência, quando o tipo de CRUD for alteração.
Segue um exemplo:
1 2 3 4 5 | public class LancamentoEventosAntesDepoisCrudObserver { private void antesAlteracao(@Observes @JArchEventBeforeSaveChange LancamentoEntity lancamento) { LogUtils.generate("Antes da alteração"); } |
@JArchEventAfterSaveChange
Esse evento é disparado após chamar o método para salvar a entidade no contexto de persistência, quando o tipo de CRUD for alteração.
Segue um exemplo:
1 2 3 4 5 | public class LancamentoEventosAntesDepoisCrudObserver { private void depoisAlteracao(@Observes @JArchEventAfterSaveChange LancamentoEntity lancamento) { LogUtils.generate("Depois da alteração"); } |
@JArchEventBeforeSaveInsertChange
Esse evento é disparado antes chamar o método para salvar a entidade no contexto de persistência, quando o tipo de CRUD for inclusão, clonagem ou alteração.
Segue um exemplo:
1 2 3 4 5 | public class LancamentoEventosAntesDepoisCrudObserver { private void antesInclusaoAlteracao(@Observes @JArchEventBeforeSaveInsertChange LancamentoEntity lancamento) { LogUtils.generate("Antes da inclusão / alteração"); } |
@JArchEventAfterSaveInsertChange
Esse evento é disparado após chamar o método para salvar a entidade no contexto de persistência, quando o tipo de CRUD for inclusão, clonagem ou alteração.
Segue um exemplo:
1 2 3 4 5 | public class LancamentoEventosAntesDepoisCrudObserver { private void depoisInclusaoAlteracao(@Observes @JArchEventAfterSaveInsertChange LancamentoEntity lancamento) { LogUtils.generate("Depois da inclusão / alteração"); } |
@JArchEventBeforeSaveDelete
Esse evento é disparado antes chamar o método para salvar a entidade no contexto de persistência, quando o tipo de CRUD for exclusão.
Segue um exemplo:
1 2 3 4 5 | public class LancamentoEventosAntesDepoisCrudObserver { private void antesExclusao(@Observes @JArchEventBeforeSaveDelete LancamentoEntity lancamento) { LogUtils.generate("Antes da exclusão"); } |
@JArchEventAfterSaveDelete
Esse evento é disparado após chamar o método para salvar a entidade no contexto de persistência, quando o tipo de CRUD for exclusão.
Segue um exemplo:
1 2 3 4 5 | public class LancamentoEventosAntesDepoisCrudObserver { private void depoisExclusao(@Observes @JArchEventAfterSaveDelete LancamentoEntity lancamento) { LogUtils.generate("Depois da exclusão"); } |
Conclusão
Nesse post eu mostrei os eventos de antes e após as ações de CRUD no contexto de persistência. Isso é muito útil porque podemos interceptar antes para adicionar alguma informação na entidade ou após para recuperar alguma informação dela como por exemplo o ID. Todos os eventos até agora são para interceptar a entidade, no próximo post eu vou mostrar como interceptar os métodos da action, muito útil para poder fazer algum tratamento com os componentes do JSF por exemplo.
Até mais,
Nenhum comentário:
Postar um comentário