Class ValidaAlertaETrava
Cada instância é configurada conforme um parâmetro de empresa.
Tipicamente, deve-se criar uma instância em um processo, e então usá-la conforme a necessidade.
Esta classe foi inspirada na classe GeraLogParamError
, tentando ser
flexível para uso em classes Java genéricas ou formulários NXJ.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
ValidaAlertaETrava.Validacao<E extends Exception>
Executa a validação e, se for necessário dar um alerta, lança uma Exception ou retorna uma mensagem. -
Constructor Summary
ConstructorsConstructorDescriptionValidaAlertaETrava
(br.com.intersys.systextil.connection.AppConnection conn, int codigo_empresa, Interactive interactive, String param) Configura um validador conforme um parâmetro de empresa.ValidaAlertaETrava
(Interactive interactive, int tipoAlerta) Configura um validador conforme um parâmetro de empresa. -
Method Summary
Modifier and TypeMethodDescriptionvoid
alertar
(Translatable msg) Registra e apresenta o alerta com a mensagem informada, se estiver configurado para isso.boolean
alertou()
Permite saber se algum alerta do tipo 1 (não bloqueia) foi apresentado.void
Quando esta instância é reusada, apaga o indicador de que algum alerta foi apresentado, para só considerar de agora em diante.boolean
Informa se será emitido algum alerta.<E extends Exception>
voidvalidar
(ValidaAlertaETrava.Validacao<E> validacao) Conveniência para encapsular a validação que lança a mensagem de alerta.
-
Constructor Details
-
ValidaAlertaETrava
public ValidaAlertaETrava(br.com.intersys.systextil.connection.AppConnection conn, int codigo_empresa, Interactive interactive, String param) Configura um validador conforme um parâmetro de empresa.- Parameters:
conn
- a conexão a ser usada para ler o parâmetro de empresacodigo_empresa
- a empresainteractive
- para apresentar mensagens sem interromper o processo; pode ser nulo se com certeza não for usado.param
- o nome do parâmetro de empresa
-
ValidaAlertaETrava
Configura um validador conforme um parâmetro de empresa.Este construtor pode ser usado se o parâmetro de empresa já foi obtido.
- Parameters:
interactive
- para apresentar mensagens sem interromper o processo; pode ser nulo se com certeza não for usado.tipoAlerta
- o tipo de alerta obtido do parâmetro de empresa: 1 é alerta; 2 é trava; outros valores são ignorados.
-
-
Method Details
-
temAlerta
public boolean temAlerta()Informa se será emitido algum alerta.É conveniente usar este método antes de aplicar regras de negócio e gerar mensagens desnecessariamente.
- Returns:
- se o tipo de alerta configurado é 1 ou 2, ou não é.
-
alertou
public boolean alertou()Permite saber se algum alerta do tipo 1 (não bloqueia) foi apresentado. Assim pode-se apresentar vários alertas e então tomar uma decisão, por exemplo interromper a execução do método atual.- Returns:
- se algum alerta foi apresentado
- See Also:
-
resetAlertou
public void resetAlertou()Quando esta instância é reusada, apaga o indicador de que algum alerta foi apresentado, para só considerar de agora em diante.- See Also:
-
alertar
Registra e apresenta o alerta com a mensagem informada, se estiver configurado para isso. Se não estiver, não faz nada.Prefira usar o método
validar(Validacao)
, pois o mesmo só invocará a rotina de validação se este validador estiver configurado para fazê-lo.Atenção: Se não lançar exceção, este método continua a execução normalmente depois de apresentar a mensagem. Portanto, qualquer tipo de limpeza ou tratamento de dados pode ser feito depois de invocar este método.
- Parameters:
msg
- o texto da mensagem; se for nulo, nada será feito- Throws:
TagException
- se o alerta deve interromper o processo
-
validar
public <E extends Exception> void validar(ValidaAlertaETrava.Validacao<E> validacao) throws TagException, E Conveniência para encapsular a validação que lança a mensagem de alerta. Se não estiver configurado para apresentar alerta, não faz nada.Pode ser usado no NXJ, pois lá qualquer acesso SQL pode lançar diversos tipos de Exception.
Atenção: Se não lançar exceção, este método continua a execução normalmente depois de apresentar a mensagem. Portanto, qualquer tipo de limpeza ou tratamento de dados pode ser feito depois de invocar este método.
- Type Parameters:
E
- uma eventual exceção imprevista- Parameters:
validacao
- a função que faz a validação e lança uma mensagem se houver- Throws:
TagException
- se o alerta deve interromper o processoE
- se algum outro problema ocorrer- See Also:
-