It is possible to transform a javax.persistence.Query
into ArrayList
.
I need to return an object of type Query
but can not have all result values.
I want to delete some results based on some tests, the code is below.
I have to return an object of type Query
because it is a generic class and I can not modify SQL.
...
Query consulta = entityManager.createQuery(builder.toString());
Query queryRetornoQuery;
Set<String> chaveParametros = parametros.keySet();
if (chaveParametros != null) {
for (String parametro : chaveParametros) {
consulta.setParameter(parametro, parametros.get(parametro));
}
}
RelatorioSituacaoEmpresasContratadasTO empresasContratadasTO = null;
List<RelatorioSituacaoEmpresasContratadas> listaSituacoes =
consulta.getResultList();
for (RelatorioSituacaoEmpresasContratadas relatorioSituacaoEmpresasContratadas : listaSituacoes) {
empresasContratadasTO =
ConversorEntidadeTransferObject
.converterRelatorioSituacaoEmpresasContratadas(relatorioSituacaoEmpresasContratadas);
/* O contrato está inativo? */
if (hoje.compareTo(empresasContratadasTO
.getDataInicioContratoEmpresa()) < 0
|| hoje.compareTo(empresasContratadasTO
.getDataFimContratoEmpresa()) > 0) {
empresasContratadasTO
.setStatusContatoEmpresa(Constantes.CODIGO_STATUS_CONTRATO_EMPRESA_INATIVO);
empresasContratadasTO
.setDescricaoStatusContratoEmpresa(Constantes.DESCRICAO_STATUS_CONTRATO_EMPRESA_INATIVO);
}
listaSituacoesEmpresasContratadas.add(empresasContratadasTO);
}
// No lugar dessa lista abaixo quero retornar um objeto Query
return listaSituacoesEmpresasContratadas;
}