Class IntermediaryQueryResult
java.lang.Object
br.ufsc.labsec.signature.database.query.IntermediaryQueryResult
public class IntermediaryQueryResult extends Object
Representa o resultado de uma consulta ao banco de dados
Esta classe é utilizada para facilitar a conversão de um ResultSet para outra estrutura de dados.
Ela pode transformar um resultado em Integer, Long, Double, String, byte[] e agrupa-los em uma
List ou Set.
No momento, ela só suporta o resultado de uma coluna.
-
Method Summary
Modifier and Type Method Description static IntermediaryQueryResultempty()Retorna umIntermediaryQueryResultvazio.<T> Tget(Class<T> clazz)Pega um elemento da query e o converte para o tipo especificado<T, U> org.apache.commons.lang3.tuple.Pair<T,U>get(Class<T> rightClass, Class<U> leftClass)intgetResultSize()Retorna o tamanho do resultadobooleanisPresent()Retorna se o resultado da query está presente.static IntermediaryQueryResultof(Statement statement, boolean inMemory)Cria umIntermediaryQueryResulta partir de umStatement<T> List<T>toList(Class<T> clazz)Converte o resultado da query para umaListde elementos do tipo especificado<T> TtoObject(Function<ResultSetWrapper,T> function)<T> Set<T>toObjectCollection(Function<ResultSetWrapper,T> function)<T> Set<T>toSet(Class<T> clazz)Converte o resultado da query para umSetde elementos do tipo especificado<T, U> Set<org.apache.commons.lang3.tuple.Pair<T,U>>toSet(Class<T> rightClass, Class<U> leftClass)
-
Method Details
-
of
public static IntermediaryQueryResult of(Statement statement, boolean inMemory) throws SQLExceptionCria umIntermediaryQueryResulta partir de umStatement- Parameters:
statement-Statementutilizado para a queryinMemory- Indica se o banco de dados está em memória- Returns:
IntermediaryQueryResultcom o resultado da query- Throws:
SQLException- Exceção lançada caso ocorra algum erro no acesso ao banco de dados
-
empty
Retorna umIntermediaryQueryResultvazio. Não é possível executar operações sobre ele.- Returns:
IntermediaryQueryResultvazio- See Also:
check(Class...)
-
isPresent
public boolean isPresent()Retorna se o resultado da query está presente.Normalmente, o resultado da query não está presente quando a query não retorna nada, ou seja, não é um SELECT.
- Returns:
- True se o resultado da query está presente, false caso contrário
-
toSet
Converte o resultado da query para umSetde elementos do tipo especificado- Type Parameters:
T- Tipo do resultado- Parameters:
clazz- Classe para o qual o resultado será convertido- Returns:
- Lista de elementos do tipo especificado
- Throws:
SQLException- Exceção lançada caso ocorra algum erro no acesso ao banco de dados
-
toObject
- Throws:
SQLException
-
toObjectCollection
- Throws:
SQLException
-
toSet
public <T, U> Set<org.apache.commons.lang3.tuple.Pair<T,U>> toSet(Class<T> rightClass, Class<U> leftClass) throws SQLException- Throws:
SQLException
-
toList
Converte o resultado da query para umaListde elementos do tipo especificado- Type Parameters:
T- Tipo do resultado- Parameters:
clazz- Classe para o qual o resultado será convertido- Returns:
- Lista de elementos do tipo especificado
- Throws:
SQLException- Exceção lançada caso ocorra algum erro no acesso ao banco de dados
-
get
Pega um elemento da query e o converte para o tipo especificado- Type Parameters:
T- Tipo do resultado- Parameters:
clazz- Classe para o qual o resultado será convertido- Returns:
- O resultado convertido
- Throws:
SQLException- Exceção lançada caso ocorra algum erro no acesso ao banco de dados
-
get
public <T, U> org.apache.commons.lang3.tuple.Pair<T,U> get(Class<T> rightClass, Class<U> leftClass) throws SQLException- Throws:
SQLException
-
getResultSize
Retorna o tamanho do resultado- Returns:
- O tamanho do resultado
- Throws:
SQLException- Exceção lançada caso ocorra algum erro no acesso ao banco de dados
-