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
ConstructorsModifierConstructorDescriptionprotected
ValidadorComObjeto
(String notFoundTag) Inicializa um validador. -
Method Summary
Modifier and TypeMethodDescriptionprotected D
get
(AppConnection conn, C codigo) Subclasses invocam este método para obter o objeto procurado.protected abstract D
read
(AppConnection conn, C codigo) Implementar este método para obter um objetoD
a partir de uma chaveC
.final D
validate
(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 chaveC
que originou a mensagem.
-
-
Method Details
-
read
Implementar este método para obter um objetoD
a 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
-