[Castore-commits] Facade.java 1.11 1.12

Céline BENOIT cbenoit at adullact1.hosting.cri74.org
Mer 22 Mar 11:40:12 CET 2006


Update of /cvsroot/castore/castore-core/src/java/fr/emn/castor/documents
In directory adullact1:/tmp/cvs-serv10392/src/java/fr/emn/castor/documents

Modified Files:
	Facade.java 
Log Message:
adaptation du code aux médias

Index: Facade.java
===================================================================
RCS file: /cvsroot/castore/castore-core/src/java/fr/emn/castor/documents/Facade.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** Facade.java	21 Mar 2006 16:08:47 -0000	1.11
--- Facade.java	22 Mar 2006 10:40:10 -0000	1.12
***************
*** 54,73 ****
  import fr.emn.castor.collections.CollectionException;
  import fr.emn.castor.common.Constants;
! import fr.emn.castor.documents.metier.DocumentException;
! import fr.emn.castor.documents.metier.Fonds;
! import fr.emn.castor.documents.metier.workflow.AState;
! import fr.emn.castor.documents.metier.workflow.Private;
! import fr.emn.castor.documents.metier.workflow.Refused;
! import fr.emn.castor.documents.metier.workflow.SubmissionInProgress;
! import fr.emn.castor.documents.metier.workflow.Submitted;
! import fr.emn.castor.documents.metier.workflow.Validated;
! import fr.emn.castor.documents.metier.workflow.ValidationInProgress;
! import fr.emn.castor.documents.metier.workflow.WaitingTutor;
! import fr.emn.castor.documents.metier.workflow.WorkflowManager;
! import fr.emn.castor.documents.retro.Converter;
! import fr.emn.castor.documents.visualisation.metier.ATrans;
! import fr.emn.castor.documents.visualisation.metier.TransHtml;
! import fr.emn.castor.documents.visualisation.metier.TransPdf;
! import fr.emn.castor.documents.visualisation.metier.TransSource;
  import fr.emn.castor.recherche.metier.lucene.UpdateDocThread;
  import fr.emn.castor.users.UsersConstants;
--- 54,76 ----
  import fr.emn.castor.collections.CollectionException;
  import fr.emn.castor.common.Constants;
! import fr.emn.castor.common.PropertiesHelper;
! import fr.emn.castor.documents.metier.docGenerique.DocumentException;
! import fr.emn.castor.documents.metier.docGenerique.conversion.AConverter;
! import fr.emn.castor.documents.metier.docGenerique.workflow.AState;
! import fr.emn.castor.documents.metier.docGenerique.workflow.Private;
! import fr.emn.castor.documents.metier.docGenerique.workflow.Refused;
! import fr.emn.castor.documents.metier.docGenerique.workflow.SubmissionInProgress;
! import fr.emn.castor.documents.metier.docGenerique.workflow.Submitted;
! import fr.emn.castor.documents.metier.docGenerique.workflow.Validated;
! import fr.emn.castor.documents.metier.docGenerique.workflow.ValidationInProgress;
! import fr.emn.castor.documents.metier.docGenerique.workflow.WaitingTutor;
! import fr.emn.castor.documents.metier.docGenerique.workflow.WorkflowManager;
! import fr.emn.castor.documents.metier.medias.images.conversion.ConverterPNG;
! import fr.emn.castor.documents.metier.textes.retro.ConverterXML;
! import fr.emn.castor.documents.metier.textes.visualisation.ATrans;
! import fr.emn.castor.documents.metier.textes.visualisation.TransHtml;
! import fr.emn.castor.documents.metier.textes.visualisation.TransPdf;
! import fr.emn.castor.documents.metier.textes.visualisation.TransSource;
! import fr.emn.castor.groupes.metier.MaintenanceGroupesException;
  import fr.emn.castor.recherche.metier.lucene.UpdateDocThread;
  import fr.emn.castor.users.UsersConstants;
***************
*** 97,104 ****
      private WorkflowManager workflowManager;
  
!     /**
!      * Le convertisseur de documents vers XML.
!      */
!     private Converter converter;
  
      /** Constructeur privé. */
--- 100,105 ----
      private WorkflowManager workflowManager;
  
!     /** Le convertisseur de documents vers XML. */
!     private AConverter converter;
  
      /** Constructeur privé. */
***************
*** 106,110 ****
          this.fonds = Fonds.getInstance();
          this.workflowManager = WorkflowManager.getInstance();
-         this.converter = Converter.getInstance();
      }
  
--- 107,110 ----
***************
*** 694,709 ****
      public void mettreAJourDocument(
              final InputStream content, final String extension,
!             final String idDoc) {
!         // on supprime tout les residus de la transformation precedente.
!         boolean cleaned = this.converter.cleanConv(idDoc, true);
!         if (cleaned) {
!             boolean doUpdate = false;
!             if (this.getStateOfDoc(idDoc).equals(
!                 DocumentsConstants.VALIDATED)) {
!                 doUpdate = true;
              }
              try {
                  this.fonds.creerUneNouvelleVersionSource(idDoc, extension);
-                 this.fonds.creerUneNouvelleVersionDocument(idDoc);
                  this.fonds.creerSourceFile(content, idDoc, extension);
              } catch (IOException e) {
--- 694,748 ----
      public void mettreAJourDocument(
              final InputStream content, final String extension,
!             final String docName, final String idDoc) {
!         String typeMIME = PropertiesHelper.getProperty(
!             DocumentsConstants.EXTENSION, "mime" + extension);
!         if (typeMIME.contains("text")
!                 || typeMIME.contains("application/soffice")
!                 || typeMIME.contains("application/vnd.sun.xml.writer")
!                 || typeMIME.contains("application/x-zip-compressed")
!                 || typeMIME.contains("application/msword")
!                 || typeMIME.contains("application/pdf")) {
!             // Si le document à mettre à jour est un texte
!             this.converter = ConverterXML.getInstance();
!   	      // on supprime tout les residus de la transformation precedente.
!     	    boolean cleaned = this.converter.cleanConv(idDoc, true);
!         	if (cleaned) {
! 	            boolean doUpdate = false;
!     	        if (this.getStateOfDoc(idDoc).equals(
!         	        DocumentsConstants.VALIDATED)) {
!             	    doUpdate = true;
!                 }
!                 try {
!                     this.fonds.creerUneNouvelleVersionSource(idDoc, extension);
!                     this.fonds.creerUneNouvelleVersionDocumentConverti(
!                         idDoc, extension);
!                     this.fonds.creerSourceFile(content, idDoc, extension);
!                 } catch (IOException e) {
!                     if (log.isErrorEnabled()) {
!                         log.error(
!                             "Erreur lors de la MAJ du document " + idDoc, e);
!                     }
!                 }
!                 // on recupere la feuille de style utilisée
!                 String fsUsed = this.fonds.getNoticeValue(idDoc, "s4sFileXslt");
!                 // on retro-converti le document.
!                 this.converter.convert(idDoc, extension, fsUsed);
!                 // on le reindexe si il le faut...
!                 if (doUpdate) {
!                     UpdateDocThread thread = new UpdateDocThread(idDoc);
!                     thread.start();
!                 }
!             } else {
!                 if (log.isErrorEnabled()) {
!                     log.error("Erreur de nettoyage lors de la MAJ du document "
!                             + idDoc);
!                 }
              }
+         } else if (typeMIME.contains("image")) {
+             // Si le document à mettre à jour est une image
+             this.converter = ConverterPNG.getInstance();
              try {
+                 this.fonds.creerUneNouvelleVersionDocumentConverti(idDoc, extension);
                  this.fonds.creerUneNouvelleVersionSource(idDoc, extension);
                  this.fonds.creerSourceFile(content, idDoc, extension);
              } catch (IOException e) {
***************
*** 713,730 ****
                  }
              }
!             // on recupere la feuille de style utilisée
!             String fsUsed = this.fonds.getNoticeValue(idDoc, "s4sFileXslt");
!             // on retro-converti le document.
!             this.converter.convert(idDoc, fsUsed, extension);
!             // on le reindexe si il le faut...
!             if (doUpdate) {
!                 UpdateDocThread thread = new UpdateDocThread(idDoc);
!                 thread.start();
!             }
!         } else {
!             if (log.isErrorEnabled()) {
!                 log.error("Erreur de nettoyage lors de la MAJ du document "
!                         + idDoc);
              }
          }
      }
--- 752,774 ----
                  }
              }
!             //on converti le document.
!             this.converter.convert(idDoc, extension, null);
!         } else if (typeMIME.contains("video") || typeMIME.contains("audio")
!                 || typeMIME.contains("application/zip")) {
!             // Si le document à mettre à jour est une vidéo, sonore, ou un groupe de fichier
!             try {
!                 this.fonds.creerUneNouvelleVersionDocumentConverti(idDoc, extension);
!                 this.fonds.creerUneNouvelleVersionSource(idDoc, extension);
!                 this.fonds.creerSourceFile(content, idDoc, extension);
!             } catch (IOException e) {
!                 if (log.isErrorEnabled()) {
!                     log.error("Erreur lors de la MAJ du document " + idDoc, e);
!                 }
              }
+         } else { // sinon
+             log.fatal("Le format du fichier n'est pas reconu par Castore");
+         }
+         if (log.isDebugEnabled()) {
+             log.debug("Fin de la mise à jour du document");
          }
      }
***************
*** 825,832 ****
  
      /**
!      * @see fr.emn.castor.documents.IDocuments#getRetroStatut(java.lang.String)
       */
!     public String getRetroStatut(final String id) {
!         return this.fonds.getRetroStatut(id);
      }
  
--- 869,876 ----
  
      /**
!      * @see fr.emn.castor.documents.IDocuments#getConvStatut(java.lang.String)
       */
!     public String getConvStatut(final String id) {
!         return this.fonds.getConvStatut(id);
      }
  
***************
*** 835,839 ****
       */
      public Iterator getTransFiles() {
!         return this.converter.getS4sFiles().iterator();
      }
  
--- 879,883 ----
       */
      public Iterator getTransFiles() {
!         return this.fonds.getTransFiles();
      }
  
***************
*** 871,873 ****
--- 915,924 ----
      }
  
+     /**
+      * @see fr.emn.castor.documents.IDocuments#updateListeXML(java.lang.String)
+      */
+     public void updateListeXML(final String idDoc) {
+         this.fonds.updateListeXML(idDoc);
+     }
+ 
  }
\ No newline at end of file




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