[Castore-commits] DecompressionFichiers.java 1.3 1.4

Céline BENOIT cbenoit at adullact1.hosting.cri74.org
Mar 16 Mai 17:19:55 CEST 2006


Update of /cvsroot/castore/castore-core/src/java/fr/emn/castor/documents/metier/groupesFichiers/conversion
In directory adullact1:/tmp/cvs-serv30763/src/java/fr/emn/castor/documents/metier/groupesFichiers/conversion

Modified Files:
	DecompressionFichiers.java 
Log Message:
ajout d'un paramètre de retour à la méthode decompresse
ajout de vérification de réussite à la méthode de création de répertoire
déplacement de la fermeture de flux pour rectifier un bug de décompression

Index: DecompressionFichiers.java
===================================================================
RCS file: /cvsroot/castore/castore-core/src/java/fr/emn/castor/documents/metier/groupesFichiers/conversion/DecompressionFichiers.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** DecompressionFichiers.java	15 May 2006 10:07:45 -0000	1.3
--- DecompressionFichiers.java	16 May 2006 15:19:53 -0000	1.4
***************
*** 92,97 ****
       * @param fichierDestination File
       * @param compressionType String
       */
!     public void decompresse(final String idDoc, final String extension) {
          // chemin absolu + nom & extension fichier zippé
          String pathComplete = this.fonds.getPathSource(idDoc);
--- 92,98 ----
       * @param fichierDestination File
       * @param compressionType String
+      * @return le chemin du dossier ou se trouvent les fichiers qui ont ete decompresses 
       */
!     public String decompresse(final String idDoc, final String extension) {
          // chemin absolu + nom & extension fichier zippé
          String pathComplete = this.fonds.getPathSource(idDoc);
***************
*** 133,137 ****
                      File dossierEntry = new File(cheminDest + "/"
                              + entree.getName() + "/");
!                     dossierEntry.mkdirs();
                  } else {
                      // Si ce n'est pas un répertoire 
--- 134,143 ----
                      File dossierEntry = new File(cheminDest + "/"
                              + entree.getName() + "/");
!                     if (!dossierEntry.mkdirs()) {
!                         if (log.isErrorEnabled()) {
!                             log.error("Erreur de création du répertoire "
!                                     + nouveauDossier);
!                         }
!                     }
                  } else {
                      // Si ce n'est pas un répertoire 
***************
*** 143,147 ****
                                      0, entree.getName().indexOf("/")) + "/");
                          if (!dossierEntry.exists()) {
!                             dossierEntry.mkdirs();
                          }
                      }
--- 149,159 ----
                                      0, entree.getName().indexOf("/")) + "/");
                          if (!dossierEntry.exists()) {
!                             if (!dossierEntry.mkdirs()) {
!                                 if (log.isErrorEnabled()) {
!                                     log
!                                         .error("Erreur de création du répertoire "
!                                                 + nouveauDossier);
!                                 }
!                             }
                          }
                      }
***************
*** 152,156 ****
                      dest = new BufferedOutputStream(fos, BUFFER);
                      // Ecriture sur le disque                    
!                     while ((count = zis.read(data, 0, BUFFER)) != -1) {                       
                          dest.write(data, 0, count);
                      }
--- 164,168 ----
                      dest = new BufferedOutputStream(fos, BUFFER);
                      // Ecriture sur le disque                    
!                     while ((count = zis.read(data, 0, BUFFER)) != -1) {
                          dest.write(data, 0, count);
                      }
***************
*** 160,166 ****
                      dest.close();
                  }
-                 buffi.close();
-                 archive_a_decompresser.close();
              }
              // Fermeture de l'archive  
              zis.close();
--- 172,178 ----
                      dest.close();
                  }
              }
+             buffi.close();
+             archive_a_decompresser.close();
              // Fermeture de l'archive  
              zis.close();
***************
*** 175,178 ****
--- 187,191 ----
                  idDoc, DocumentsConstants.CONVERSION_ERROR);
          }
+         return path + nouveauDossier;
      }
  
***************
*** 182,186 ****
       * @return la liste des fichiers contenus dans le document compressé 
       */
!     public static Enumeration listerContenuDoc(final String pathFic) {
          try {
              // Fichier à traiter 
--- 195,199 ----
       * @return la liste des fichiers contenus dans le document compressé 
       */
!     public Enumeration listerContenuDoc(final String pathFic) {
          try {
              // Fichier à traiter 




Plus d'informations sur la liste de diffusion Castore-commits