[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