-/**
+/*
* Copyright 2012-2013 Nicolas LE GRAND
- * Copyright 2013-2015 Stephane Vast - Adullact Projet
+ * Copyright 2013-2017 Stephane Vast - Libriciel SCOP
*
* This file is part of PushDocParapheur.
*
* Facilitateur d'interaction avec les web-services i-Parapheur
*
* @author Nicolas LE GRAND - Conseil General du Finistere
- * @author Stephane Vast - Adullact Projet
+ * @author Stephane Vast - Libriciel SCOP
*/
class ProxyParapheur {
if (dossierTitre!=null && !dossierTitre.trim().isEmpty()) {
creerDossierRequest.setDossierTitre(dossierTitre);
}
- creerDossierRequest.setDocumentPrincipal(GetTypeDoc(docPrincipal, guessMimeType(nomDocPrincipal)));
+ String mimeType = guessMimeType(nomDocPrincipal);
+ if (mimeType==null) {
+ throw new Exception("extension du nomDocPrincipal est manquante ou inconnue: " + nomDocPrincipal);
+ }
+ creerDossierRequest.setDocumentPrincipal(GetTypeDoc(docPrincipal, mimeType));
creerDossierRequest.setNomDocPrincipal(nomDocPrincipal);
//inutile! creerDossierRequest.setVisuelPDF(GetTypeDoc(visuelPdf, "application/pdf"));
creerDossierRequest.setVisibilite(Visibilite.fromValue(visibilite));
return (sdf.format(cal.getTime()));
} else {
// pattern doit etre: AAAA-MM-JJ
- String daDatePattern="(^(19|[2-9][0-9])\\d\\d[\\-](((0[1-9]|1[012])[\\-](0[1-9]|1[0-9]|2[0-8]))|((0[13578]|1[02])[\\-](29|30|31))|((0[4,6,9]|11)[\\-](29|30)))$)|(^(19|[2-9][0-9])(00|04|08|12|16|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96)[\\-]02[\\-]29$)";
+ String daDatePattern;
+ daDatePattern = "(^(19|[2-9][0-9])\\d\\d[\\-](((0[1-9]|1[012])[\\-](0[1-9]|1[0-9]|2[0-8]))|((0[13578]|1[02])[\\-](29|30|31))|((0[469]|11)[\\-](29|30)))$)|(^(19|[2-9][0-9])(00|04|08|12|16|20|24|28|32|36|40|44|48|52|56|60|64|68|72|76|80|84|88|92|96)[\\-]02[\\-]29$)";
if (dateLimite.trim().length()!="AAAA-MM-JJ".length()
|| !dateLimite.trim().matches(daDatePattern)) {
throw new Exception("date limite mal formattee, respecter la forme AAAA-MM-JJ .");
File fileIn = new File(path);
FileInputStream fis = new FileInputStream(fileIn);
byte[] buffer = new byte[fis.available()];
- fis.read(buffer);
+ if (fis.read(buffer) == -1) {
+ fis.close();
+ return null;
+ }
doc.setValue(buffer);
fis.close();
} catch(Exception e) {
}
System.out.println("INFO: json=" + json);
- /**
- * TODO : choper la liste des metadata du i-parapheur, autres que String
- */
+ /* TODO : choper la liste des metadata du i-parapheur, autres que String */
ListeMetaDonnees listeMetaDonnees = appelGetListeMetaDonnees();
private static TypeCircuit overrideCircuitWith(GetCircuitPourUtilisateurResponse circuit) {
TypeCircuit forcedWorkflow = new TypeCircuit();
- java.util.Iterator<EtapeCircuit> it = circuit.getEtapeCircuit().iterator();
- while (it.hasNext()) {
+ for (EtapeCircuit etapeCircuit : circuit.getEtapeCircuit()) {
// EtapeCircuit etapeCircuit = it.next();
- forcedWorkflow.getEtapeCircuit().add(it.next());
+ forcedWorkflow.getEtapeCircuit().add(etapeCircuit);
}
return forcedWorkflow;
}
-/**
+/*
* Copyright 2012-2013 Nicolas LE GRAND
- * Copyright 2013-2016 Stephane Vast - Adullact Projet
+ * Copyright 2013-2017 Stephane Vast - Libriciel SCOP
*
* This file is part of PushDocParapheur.
*
/**
* Client (assez) generique pour i-Parapheur.
- * But: deposer des dossiers en validation dans i-Parapheur.
+ * But: soumettre des dossiers en validation dans i-Parapheur.
*
- * @author Nicolas Legrand - Conseil General du Finistere
- * @author Stephane Vast - Adullact Projet
+ * @author Nicolas Legrand - Conseil Departemental du Finistere
+ * @author Stephane Vast - Libriciel SCOP
*/
public class PusherDeDoc {
} catch (IOException e1) {
e1.printStackTrace();
}
- logger.log(Level.INFO, "Version: 1.7 , build 2016-01-20");
+ logger.log(Level.INFO, "Version: 1.11 , build 2017-02-06");
MesOptions options = new MesOptions();
CmdLineParser parser = new CmdLineParser(options);
// ##### SANITY CHECK
logger.log(Level.INFO, "Appel d'echo vers i-Parapheur...");
- String ECHO_STRING = "Hello i-Parapheur, I am the gentle bot.";
+ String ECHO_STRING = "Hello i-Parapheur, I am the gentle pushdoc bot.";
if (!proxy.appelEcho(ECHO_STRING).contains(ECHO_STRING)) {
logger.log(Level.INFO, "Connexion impossible vers i-Parapheur, attention au contenu du fichier de configuration");
System.out.println("Connexion impossible vers i-Parapheur, attention au contenu du fichier de configuration");
// ##### Envoi simple du document
String retour;
if (options.getNomDocPrincipal().trim().toLowerCase().endsWith(".xml")) {
- /**
+ /*
* cas particulier de fichier XML: quelques paramètres en plus
*/
try {