/** Descomprime los archivos de la tarea. */ protected void descompArchivos() throws ADMINGLOExcepcion { String cNombreAnt = ""; Iterator itr; PERSCoordinacion.Archivos archI; Map mpArchListos, mpArchPresentes, mpArchAusentes; mpArchListos = new TreeMap(String.CASE_INSENSITIVE_ORDER); mpArchPresentes = new TreeMap(String.CASE_INSENSITIVE_ORDER); if (this.siSubtrabajo()) { if (this.siSubtrabajoFin()) { subtraV.loadArchivosSalidaListos(mpArchListos); subtraV.loadArchivosSalidaPresentes(mpArchPresentes); } else { subtraV.loadArchivosListos(mpArchListos); subtraV.loadArchivosPresentes(mpArchPresentes); } } else { // // provisional [ // try { // this.info.getConex().dbCommit(); // } catch (OIExcepcion e) { // System.err.println("[Provisional] No pudo escribirse en la base de datos"); // } // // provisional ] tarea.loadArchivosListos(mpArchListos); tarea.loadArchivosPresentes(mpArchPresentes); } itr = mpArchivos.values().iterator(); while (itr.hasNext()) { archI = (PERSCoordinacion.Archivos) itr.next(); if (mpArchListos.get(archI.getNombre()) != null) { // el archivo no se debe descomprimir, ya está listo. } else { if (mpArchPresentes.get(archI.getNombre()) != null) { // el archivo se debe descomprimir. if (this.siSubtrabajo()) { if (this.siSubtrabajoFin()) { // Zip.unzipFile(subtrabajo.getComprimidosDir()+ // "/"+archI.getNombre(), // subtrabajo.getResultadosDir()); // tdutils.copiaArchivo() try { tdutils.copiaArchivo( new File(subtraV.getSubtrabajoDir() + "/" + archI.getNombre()), new File(subtraV.getResultadosDir() + "/" + archI.getNombre())); // tdutils.copiaArchivo(new File(subtraV.getSubtrabajoDir()+"/"+ archI.getNombre()), // new File(subtraV.getResultadosDir()+"/"+archI.getNombre())); } catch (IOException e) { e.printStackTrace(); } } else { // Zip.unzipFile(subtrabajo.getComprimidosDir()+ // "/"+archI.getNombre(), // subtrabajo.getSubtrabajoDir()); } } else { Zip.unzipFile(tarea.getComprimidosDir() + "/" + archI.getNombre(), tarea.getTareaDir()); } try { archI.setEstadoArchivo(ADMINAPPIArchivos.ARCHIVO_LISTO); archI.write(); } catch (ADMINGLOExcepcion ex) { } } else { // el archivo está ausente archI.setEstadoArchivo(ADMINAPPIArchivos.ARCHIVO_AUSENTE); try { archI.write(); } catch (ADMINGLOExcepcion ex1) { } continue; } } } }