Introdução
No post anterior eu mostrei alguns exemplos de eventos na inicialização do CRUD e no login. Nesse segundo post mostrarei alguns eventos de validações.
@JArchEventValidInsert
Esse evento é disparado antes da gravação de uma inclusão ou clonagem.
Segue um exemplo abaixo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | package br.com.wesa.gcpr.lancamento; import com.arch.annotation.ArchEventValidInsert; import com.arch.bundle.BundleUtils; import com.arch.exception.ValidationException; import com.arch.util.DateUtils; import javax.enterprise.event.Observes; import java.time.LocalDate; public class LancamentoValidacaoVencimentoAnteriorCincoAnosObserver { private void validaVencimentoAnteriorCincoAnos(@Observes @JArchEventValidInsert LancamentoEntity lancamento) { if (lancamento.getVencimento().before(DateUtils.toDate(LocalDate.now().minusYears(5)))) { throw new ValidationException(BundleUtils.messageBundle("message.vencimentoInferiorCincoAnos")); } } } |
@JArchEventValidChange
Esse evento é disparado antes da gravação de uma alteração.
Segue um exemplo abaixo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | package br.com.wesa.gcpr.lancamento; import com.arch.annotation.ArchEventValidChange; import com.arch.annotation.ArchEventValidInsert; import com.arch.bundle.BundleUtils; import com.arch.exception.ValidationException; import com.arch.util.DateUtils; import javax.enterprise.event.Observes; import java.time.LocalDate; public class LancamentoValidacaoVencimentoAnteriorCincoAnosObserver { private void validaVencimentoAnteriorCincoAnosAlteracao(@Observes @JArchEventValidChange LancamentoEntity lancamento) { validaVencimentoAnteriorCincoAnos(lancamento); } private void validaVencimentoAnteriorCincoAnosInclusao(@Observes @JArchEventValidInsert LancamentoEntity lancamento) { validaVencimentoAnteriorCincoAnos(lancamento); } private void validaVencimentoAnteriorCincoAnos(LancamentoEntity lancamento) { if (lancamento.getVencimento().before(DateUtils.toDate(LocalDate.now().minusYears(5)))) { throw new ValidationException(BundleUtils.messageBundle("message.vencimentoInferiorCincoAnos")); } } } |
@JArchEventValidInsertChange
Esse evento é disparado antes da gravação de uma inclusão, clonagem ou alteração.
Segue um exemplo abaixo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | package br.com.wesa.gcpr.lancamento; import com.arch.annotation.ArchEventValidChange; import com.arch.annotation.ArchEventValidInsert; import com.arch.annotation.ArchEventValidInsertChange; import com.arch.bundle.BundleUtils; import com.arch.exception.ValidationException; import com.arch.util.DateUtils; import javax.enterprise.event.Observes; import java.time.LocalDate; public class LancamentoValidacaoVencimentoAnteriorCincoAnosObserver { private void validaVencimentoAnteriorCincoAnosInclusaoAlteracao(@Observes @JArchEventValidInsertChange LancamentoEntity lancamento) { validaVencimentoAnteriorCincoAnos(lancamento); } private void validaVencimentoAnteriorCincoAnosAlteracao(@Observes @JArchEventValidChange LancamentoEntity lancamento) { validaVencimentoAnteriorCincoAnos(lancamento); } private void validaVencimentoAnteriorCincoAnosInclusao(@Observes @JArchEventValidInsert LancamentoEntity lancamento) { validaVencimentoAnteriorCincoAnos(lancamento); } private void validaVencimentoAnteriorCincoAnos(LancamentoEntity lancamento) { if (lancamento.getVencimento().before(DateUtils.toDate(LocalDate.now().minusYears(5)))) { throw new ValidationException(BundleUtils.messageBundle("message.vencimentoInferiorCincoAnos")); } } } |
@JArchEventValidDelete
Esse evento é disparado antes da gravação de uma exclusão.
Segue um exemplo abaixo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | package br.com.wesa.gcpr.lancamento; import com.arch.annotation.ArchEventValidDelete; import com.arch.bundle.BundleUtils; import com.arch.exception.ValidationException; import javax.enterprise.event.Observes; public class LancamentoValidaExclusaoContaBaixada { private void validaExclusaoContaBaixada(@Observes @JArchEventValidDelete LancamentoEntity lancamento) { if (lancamento.isLancamentoPago()) { throw new ValidationException(BundleUtils.messageBundle("message.lancamentoBaixadoNaoPodeSerExcluido")); } } } |
Conclusão
Nesse post eu mostrei alguns eventos de validações que são disparados de acordo com o tipo de anotação utilizada. No próximo post mostrarei mais eventos.
Até mais,
Nenhum comentário:
Postar um comentário