* @throws ECARException
*/
public List<HISTORICO> listaObjetoHistorico(UsuarioUsu usuario, Date inicio, Date fim, String[] tipoHistorico, String[] codigos) throws ECARException {
List<HistoricoXml> lstDados = new ArrayList<HistoricoXml>();
List<HISTORICO> lstHistorico = new ArrayList<HISTORICO>();
Compactador comp = new Compactador();
XStream xstream = new XStream();
HistoricoXml xml = new HistoricoXml();
HistoricoDao dao = new HistoricoDao(null);
String[] ordem = new String[] { "historico", "asc", "idObjetoSerializado", "asc", "dataHistorico", "desc" };
Map<String, Object> argumentos = new HashMap<String, Object>();
List<Long> argumentosIN = new ArrayList<Long>();
String campoIN = "idObjetoSerializado";
if (tipoHistorico != null)
for (String tipo : tipoHistorico) {
argumentos.put("tipoHistorico", Long.valueOf(tipo));
}
if (codigos != null)
for (String cod : codigos) {
// argumentos.put("idObjetoSerializado", Long.valueOf(cod));
argumentosIN.add(Long.valueOf(cod));
}
if (usuario != null)
argumentos.put("usuarioUsu", usuario);
if (objHistorico != null) {
argumentos.put("historico", objHistorico.getClass().getName());
if (inicio != null & fim != null)
lstDados = dao.buscar(xml.getClass(), "dataHistorico", inicio, fim, argumentos, ordem);
else
lstDados = dao.buscar(xml.getClass(), null, null, null, campoIN, argumentosIN, argumentos, ordem);
for (HistoricoXml object : lstDados) {
objHistorico = (HISTORICO) xstream.fromXML(comp.descompactar(object.getObjeto()));
objHistorico.setIdHistorico(object.getCodigo());
lstHistorico.add(objHistorico);
}
}
return lstHistorico;