Class BiConfiguracaoRepository
bi_configuracao (V12).
Padrão raw JDBC + ConnectionOperations igual ao restante do projeto
(ex.: ResetarPowersyncRepository). Não usa @JdbcRepository declarativo
por consistência — APIs são estreitas e mapeadas pra casos de uso específicos.
Política sistema=TRUE: rows de sistema (ex.: ultimo_nuke) são
geridas pelo backend e não podem ser alteradas via salvarEditavel(String, String);
tentativas explícitas pela UI/HTTP recebem ForbiddenException (HTTP 403). O
pipeline do reset usa marcarUltimoReset() (UPSERT específico) — bypass por
design.
criar(BiConfiguracao) sempre força sistema=FALSE no payload: chaves de sistema
nascem somente via migration ou via código backend que chama o repo direto.
-
Constructor Summary
ConstructorsConstructorDescriptionBiConfiguracaoRepository(io.micronaut.data.connection.ConnectionOperations<Connection> connectionOperations) Cria o repositório injetando o provedor de conexão JDBC usado nas queries. -
Method Summary
Modifier and TypeMethodDescriptionBusca uma configuração por chave.voidCria uma chave nova.Lista todas as configurações em ordem alfabética porid.voidUPSERT específico do marcador de reset.voidsalvarEditavel(String id, String novoValor) Atualiza ovalorde uma chave existente não-sistema.
-
Constructor Details
-
BiConfiguracaoRepository
public BiConfiguracaoRepository(io.micronaut.data.connection.ConnectionOperations<Connection> connectionOperations) Cria o repositório injetando o provedor de conexão JDBC usado nas queries.- Parameters:
connectionOperations- operações de conexão para participar da transação ativa.
-
-
Method Details
-
marcarUltimoReset
public void marcarUltimoReset()UPSERT específico do marcador de reset. GravaNOW()::TEXTno valor; clientes Dart comparam com o último valor visto para decidirdisconnectAndClear.Chamado pelo
ResetarPowersyncServicenoSTEP_FINALIZAR— bypass da políticasistema=TRUEpor design (o backend gere a chave). -
listarTodas
Lista todas as configurações em ordem alfabética porid.- Returns:
- as configurações cadastradas.
-
buscar
Busca uma configuração por chave.- Parameters:
id- a chave da configuração.- Returns:
- a configuração, ou
Optional.empty()se não existe.
-
salvarEditavel
Atualiza ovalorde uma chave existente não-sistema.- Parameters:
id- a chave da configuração.novoValor- o novo valor (já validado pelo serviço chamador).- Throws:
br.com.xadm.comum.web.NotFoundException- seidnão existe.br.com.xadm.comum.web.ForbiddenException- se a row temsistema=TRUE.
-
criar
Cria uma chave nova. Forçasistema=FALSE(chaves de sistema só nascem via migration ou código backend que chama o repo direto).- Parameters:
c- configuração a criar;sistemaé ignorado.- Throws:
br.com.xadm.comum.web.ConflictException- seidjá existe.
-