Interface MensagemM2mRepository
- All Superinterfaces:
io.micronaut.data.repository.CrudRepository<MensagemM2m, Long>, io.micronaut.data.repository.GenericRepository<MensagemM2m, Long>
@JdbcRepository(dialect=POSTGRES)
public interface MensagemM2mRepository
extends io.micronaut.data.repository.CrudRepository<MensagemM2m, Long>
Repositório Data JDBC da
MensagemM2m. Dialeto Postgres — o dialeto de produção; o teste de
plataforma sobe Postgres real (Testcontainers), então o SQL gerado é exercitado tal como roda em
produção.-
Method Summary
Modifier and TypeMethodDescriptionlongdeleteByStatusInAndUpdatedAtLessThan(Collection<Status> status, Instant corte) Poda de retenção: remove os terminais de auditoria mais velhos que o corte.findByDirecaoAndStatusInAndTentativasLessThanOrderById(Direcao direcao, Collection<Status> status, int tentativas, io.micronaut.data.model.Pageable pageable) Candidatas ao despacho: saída pendente/em-erro ainda abaixo do teto de tentativas, mais antigas primeiro.Lista para a tela (mais recentes primeiro); filtro fino fica no controller (volume de admin).Methods inherited from interface io.micronaut.data.repository.CrudRepository
count, delete, deleteAll, deleteAll, deleteById, existsById, findAll, findById, insert, insertAll, save, saveAll, update, updateAll
-
Method Details
-
findByDirecaoAndStatusInAndTentativasLessThanOrderById
List<MensagemM2m> findByDirecaoAndStatusInAndTentativasLessThanOrderById(Direcao direcao, Collection<Status> status, int tentativas, io.micronaut.data.model.Pageable pageable) Candidatas ao despacho: saída pendente/em-erro ainda abaixo do teto de tentativas, mais antigas primeiro. Sem lock de linha (semântica AT-LEAST-ONCE — dedup é do receptor).- Parameters:
direcao- sempreDirecao.SAIDA.status- tipicamente[PENDENTE, ERRO].tentativas- teto exclusivo (linhas comtentativas <este valor).pageable- limite do lote por tick.- Returns:
- lote a despachar.
-
listarRecentes
Lista para a tela (mais recentes primeiro); filtro fino fica no controller (volume de admin). -
deleteByStatusInAndUpdatedAtLessThan
Poda de retenção: remove os terminais de auditoria mais velhos que o corte.PAUSADO/CANCELADOnunca entram aqui (retidos até o operador limpar).- Parameters:
status- tipicamente[ENVIADO, RECEBIDO].corte- instante-limite; linhas comupdatedAt <corte são removidas.- Returns:
- quantidade removida.
-