[Castore-commits] AjoutDocCollPriveesAction.java 1.6 1.7
AnnulerSoumission.java NONE 1.1
SoumissionNouvelleVersionAction.java 1.8 1.9
PartagerOuResoumettreDocAction.java 1.3 1.4
mathieu grimault
grimault-m at adullact1.hosting.cri74.org
Jeu 14 Déc 11:30:20 CET 2006
Update of /cvsroot/castore/castore-struts/src/java/fr/emn/castor/struts/actions/documents
In directory adullact1:/tmp/cvs-serv22654/src/java/fr/emn/castor/struts/actions/documents
Modified Files:
AjoutDocCollPriveesAction.java
SoumissionNouvelleVersionAction.java
PartagerOuResoumettreDocAction.java
Added Files:
AnnulerSoumission.java
Log Message:
Annulation dans castore.
Le thread de retro est mise en attente jusqu'a la fin de soumission.
Index: PartagerOuResoumettreDocAction.java
===================================================================
RCS file: /cvsroot/castore/castore-struts/src/java/fr/emn/castor/struts/actions/documents/PartagerOuResoumettreDocAction.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** PartagerOuResoumettreDocAction.java 23 Jan 2006 10:29:45 -0000 1.3
--- PartagerOuResoumettreDocAction.java 14 Dec 2006 10:30:17 -0000 1.4
***************
*** 50,53 ****
--- 50,54 ----
import fr.emn.castor.common.Constants;
import fr.emn.castor.documents.IDocuments;
+ import fr.emn.castor.documents.metier.textes.retro.ConverterThread;
import fr.emn.castor.servlets.common.CastorProxy;
import fr.emn.castor.struts.common.session.StrutsConstants;
***************
*** 82,85 ****
--- 83,92 ----
request.getSession().setAttribute(
StrutsConstants.SESSION_SOUMISSION_INFOS_ID_DOC, id);
+
+ // lancement de la retro
+ ConverterThread ct = ConverterThread.getThread(id);
+ if (ct != null && ct.isAlive()) {
+ ct.setEtat(ConverterThread.ETAT_CONVERTIR);
+ }
return mapping.findForward("next");
Index: SoumissionNouvelleVersionAction.java
===================================================================
RCS file: /cvsroot/castore/castore-struts/src/java/fr/emn/castor/struts/actions/documents/SoumissionNouvelleVersionAction.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** SoumissionNouvelleVersionAction.java 20 Apr 2006 08:58:32 -0000 1.8
--- SoumissionNouvelleVersionAction.java 14 Dec 2006 10:30:17 -0000 1.9
***************
*** 55,58 ****
--- 55,59 ----
import fr.emn.castor.documents.IDocuments;
+ import fr.emn.castor.documents.metier.textes.retro.ConverterThread;
import fr.emn.castor.servlets.common.CastorProxy;
import fr.emn.castor.struts.common.session.StrutsConstants;
***************
*** 93,97 ****
return (forward);
}
! this.creerNouvelleVersionDoc(soumissionDocForm, id, request);
request.getSession().removeAttribute(
StrutsConstants.SESSION_SOUMISSION_INFOS_ID_DOC);
--- 94,110 ----
return (forward);
}
!
! // Mise a jour du document
! if (soumissionDocForm.getFormFile() != null
! && soumissionDocForm.getFormFile().getFileName().length() > 0) {
! this.creerNouvelleVersionDoc(soumissionDocForm, id, request);
! }
!
! // lancement de la retro
! ConverterThread ct = ConverterThread.getThread(id);
! if (ct != null && ct.isAlive()) {
! ct.setEtat(ConverterThread.ETAT_CONVERTIR);
! }
!
request.getSession().removeAttribute(
StrutsConstants.SESSION_SOUMISSION_INFOS_ID_DOC);
--- NEW FILE: AnnulerSoumission.java ---
/*
* $Id$
*
* Plateforme CASTORE
* CeCILL Copyright (C) 2005-2006 by EMN
* Made by
* Web site = http://www.emn.fr/castore
* Contact = Cédric Dumas, e-mail = Cedric.Dumas at emn.fr
*
* Version
*
* Ce logiciel est un programme informatique servant à créer une plateforme
* open-source de bibliothèque numérique XML pour Conserver, Valoriser et
* Diffuser le patrimoine documentaire de votre institut.
*
* Ce logiciel est régi par la licence CeCILL soumise au droit français et
* respectant les principes de diffusion des logiciels libres. Vous pouvez
* utiliser, modifier et/ou redistribuer ce programme sous les conditions de la
* licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA sur le site
* "http://www.cecill.info". En contrepartie de l'accessibilité au code source
* et des droits de copie, de modification et de redistribution accordés par
* cette licence, il n'est offert aux utilisateurs qu'une garantie limitée. Pour
* les mêmes raisons, seule une responsabilité restreinte pèse sur l'auteur du
* programme, le titulaire des droits patrimoniaux et les concédants successifs.
* A cet égard l'attention de l'utilisateur est attirée sur les risques associés
* au chargement, à l'utilisation, à la modification et/ou au développement et à
* la reproduction du logiciel par l'utilisateur étant donné sa spécificité de
* logiciel libre, qui peut le rendre complexe à manipuler et qui le réserve
* donc à des développeurs et des professionnels avertis possédant des
* connaissances informatiques approfondies. Les utilisateurs sont donc invités
* à charger et tester l'adéquation du logiciel à leurs besoins dans des
* conditions permettant d'assurer la sécurité de leurs systèmes et ou de leurs
* données et, plus généralement, à l'utiliser et l'exploiter dans les mêmes
* conditions de sécurité. Le fait que vous puissiez accéder à cet en-tête
* signifie que vous avez pris connaissance de la licence CeCILL, et que vous en
* avez accepté les termes.
*
*/
package fr.emn.castor.struts.actions.documents;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import fr.emn.castor.common.Constants.VraiFauxEnum;
import fr.emn.castor.documents.IDocuments;
import fr.emn.castor.documents.metier.textes.retro.ConverterThread;
import fr.emn.castor.servlets.common.CastorProxy;
import fr.emn.castor.struts.common.session.SessionTreeNodeMaintenance;
import fr.emn.castor.struts.common.session.StrutsConstants;
/**
* Annulation de la soumission en cours
*
* @author $Author$
* @version $Revision$
*
*/
public class AnnulerSoumission extends Action {
/** le logger. */
private static Log log = LogFactory.getLog(AnnulerSoumission.class);
public ActionForward execute(
ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
// Récup de l'identifiant du document en cours de soumission
String idDoc = (String) request.getSession().getAttribute(
StrutsConstants.SESSION_SOUMISSION_INFOS_ID_DOC);
// autorise un appel à la main pour debug
if (idDoc == null || idDoc.length() == 0) {
idDoc = request.getParameter("idDoc");
}
if (idDoc == null || idDoc.length() == 0) {
ActionMessages errors = new ActionErrors();
errors.add(
ActionMessages.GLOBAL_MESSAGE,
new ActionMessage(
"L'identifiant du document n'a pu être récupéré."
)
);
saveErrors(request, errors);
return mapping.getInputForward();
}
// nettoyage de la session
SessionTreeNodeMaintenance.getInstance().majApresSoumission(
request.getSession());
// annulation du Thread de retroconversion s'il existe
ConverterThread ct = ConverterThread.getThread(idDoc);
if (ct != null) {
ct.setEtat(ConverterThread.ETAT_ANNULER);
}
// Suppression de la bdd & systeme de fichier
IDocuments fDoc =
CastorProxy.getModuleDocuments(request.getSession());
if (VraiFauxEnum.FAUX.equals(fDoc.deleteDocumentByAdmin(idDoc))) {
// TODO A TESTER !
log.error(
"Echec de l'annulation pour le document " + idDoc
);
return mapping.getInputForward();
}
return mapping.findForward("home");
}
}
Index: AjoutDocCollPriveesAction.java
===================================================================
RCS file: /cvsroot/castore/castore-struts/src/java/fr/emn/castor/struts/actions/documents/AjoutDocCollPriveesAction.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** AjoutDocCollPriveesAction.java 16 May 2006 15:30:26 -0000 1.6
--- AjoutDocCollPriveesAction.java 14 Dec 2006 10:30:17 -0000 1.7
***************
*** 57,60 ****
--- 57,61 ----
import fr.emn.castor.common.Constants.VraiFauxEnum;
import fr.emn.castor.documents.IDocuments;
+ import fr.emn.castor.documents.metier.textes.retro.ConverterThread;
import fr.emn.castor.servlets.common.CastorProxy;
import fr.emn.castor.struts.common.session.SessionTreeNodeMaintenance;
***************
*** 107,110 ****
--- 108,118 ----
.getSession());
if (fDoc.putThisDocAsPrivate(idDoc, user)==VraiFauxEnum.VRAI) {
+
+ // lancement de la retro
+ ConverterThread ct = ConverterThread.getThread(idDoc);
+ if (ct != null && ct.isAlive()) {
+ ct.setEtat(ConverterThread.ETAT_CONVERTIR);
+ }
+
//ajout du document aux collections privées
ICollection fColl = CastorProxy.getModuleCollection(request
Plus d'informations sur la liste de diffusion Castore-commits