Package systextil.valid
Class ValidadorComObjeto<C,D>
java.lang.Object
systextil.valid.ValidadorComObjeto<C,D>
- Type Parameters:
C- o tipo da chave usada na buscaD- o tipo do objeto de dados retornado na busca
- Direct Known Subclasses:
ValidadorComDescricao
Validador que obtém um objeto de dados qualquer (
D) a partir de uma
chave qualquer (C).
Este objeto não memoriza as chaves usadas e os objetos obtidos. Isto seria interessante para ganhar desempenho. É interessante em algum momento implementar a memorização do último objeto usado ou mesmo um cache de todos os objetos.
Como este objeto não memoriza dados, é adequado para "singletons". Não é preciso criar várias instâncias iguais para usar em processos diferentes.
- Author:
- sergio
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedValidadorComObjeto(String notFoundTag) Inicializa um validador. -
Method Summary
Modifier and TypeMethodDescriptionprotected Dget(AppConnection conn, C codigo) Subclasses invocam este método para obter o objeto procurado.protected abstract Dread(AppConnection conn, C codigo) Implementar este método para obter um objetoDa partir de uma chaveC.final Dvalidate(AppConnection conn, C codigo) Subclasses invocam este método para obter e validar o objeto procurado.
-
Constructor Details
-
ValidadorComObjeto
Inicializa um validador.- Parameters:
notFoundTag- a tag da mensagem de objeto não encontrado. Se ela tiver um parâmetro, será preenchido com a chaveCque originou a mensagem.
-
-
Method Details
-
read
Implementar este método para obter um objetoDa partir de uma chaveC.- Parameters:
conn- a conexão ao banco de dadoscodigo- a chave usada na busca- Returns:
- o objeto encontrado, ou null se não for encontrado
- Throws:
TagException- se o objeto obtido violar alguma regra - não é necessário para o caso de simplesmente obter a descrição
-
validate
Subclasses invocam este método para obter e validar o objeto procurado.- Parameters:
conn- a conexão ao banco de dadoscodigo- a chave usada na busca- Returns:
- o objeto encontrado e validado; nunca é null
- Throws:
TagException- construída a partir denotFoundTag, se o objeto não for encontrado, ou a mensagem de validação se não for válido
-
get
Subclasses invocam este método para obter o objeto procurado.- Parameters:
conn- a conexão ao banco de dadoscodigo- a chave usada na busca- Returns:
- o objeto encontrado, ou null se a chave for nula, ou se não for encontrado, ou se for inválido
-