InterceptadorUtils¶
Classe utilitária com métodos auxiliares para acesso às variáveis de sessão, entidades padrão, construção de cláusulas WHERE e integração com o banco de dados no contexto do SAM.
Pacote¶
sam.server.samdev.utils
Instância Singleton¶
static InterceptadorUtils INSTANCE
¶
Instância pública única da classe.
Sessão SAM¶
SAMWhere getSamWhere()
¶
Retorna uma nova instância de SAMWhere
com base nas variáveis da sessão atual.
Variaveis getVariaveis()
¶
Retorna a instância atual de Variaveis
, contendo contexto da sessão (usuário, empresa, etc).
Entidades¶
Aac01 obterGC(Long aac01id, Session s)
¶
Obtém a entidade Aac01
(provavelmente grupo de cálculo ou similar) pelo seu ID usando uma sessão ORM.
Aab10 obterUsuarioLogado()
¶
Retorna o usuário logado atual (Aab10
), obtido a partir das variáveis de sessão.
Aac10 obterEmpresaAtiva()
¶
Retorna a empresa ativa (Aac10
) associada à sessão atual.
Where Padrão¶
String obterWherePadrao(String classe)
¶
Gera a cláusula WHERE padrão para uma entidade pelo nome da classe, utilizando AND
por padrão.
String obterWherePadrao(String classe, String whereAndOr)
¶
Permite definir o operador lógico (AND
ou OR
) para construir a cláusula WHERE padrão com base na classe informada.
Banco de Dados¶
BancoDadosUtils getAcessoAoBanco(Session s)
¶
Instancia a classe BancoDadosUtils
para acesso ao banco, já configurada com a sessão atual e SAMWhere
.
Parametro criarParametroSql(String chave, Object valor)
¶
Cria uma instância de Parametro
para uso em queries parametrizadas.
Controle de Fluxo¶
void interromper(String mensagem)
¶
Lança uma ValidacaoException
com a mensagem informada. Usado para parar fluxos com validação explícita.
Exemplo de uso¶
InterceptadorUtils utils = InterceptadorUtils.INSTANCE;
String wherePadrao = utils.obterWherePadrao("sam.model.entities.fb.Fba01");
BancoDadosUtils banco = utils.getAcessoAoBanco(session);
if (!usuarioValido) {
utils.interromper("Usuário não autorizado.");
}