import java.util.HashMap;
import java.util.Hashtable;
import java.util.Stack;
+import java.util.Vector;
import javax.xml.namespace.NamespaceContext;
private ControlProgressListener cpl;
ArrayList<AddOnModel> addOns = null;
private MessagesProvider messagesProvider = null;
+ private Vector<Pair> donneesFlux = null;
public void setControlProgressListener(ControlProgressListener cpl) {
public MessagesProvider getMessagesProvider() {
return messagesProvider;
}
+
+ public Vector<Pair> getDonneesFlux() {
+ return donneesFlux;
+ }
+
+ public void setDonneesFlux(Vector<Pair> donneesFlux) {
+ this.donneesFlux = donneesFlux;
+ }
+
}
import java.util.Vector;
import nu.xom.Document;
+import fr.gouv.finances.dgfip.utils.Pair;
import fr.gouv.finances.dgfip.xemelios.controls.core.models.DocumentControlModel;
/**
}
public abstract String getControlId();
+
+ public Vector<Pair> getDonneesFlux() {
+ return this.cch.getDonneesFlux();
+ }
+
+ public void setDonneesFlux(Vector<Pair> donneesFlux) {
+ this.cch.setDonneesFlux(donneesFlux);
+ }
}
import java.util.ArrayList;
import java.util.Hashtable;
+import java.util.Vector;
import nu.xom.Builder;
import nu.xom.Document;
import org.xml.sax.SAXException;
import fr.gouv.finances.dgfip.xemelios.controls.core.models.ControlModel;
+import fr.gouv.finances.dgfip.utils.Pair;
/**
* @author jp.tessier
private static final Logger logger = Logger.getLogger(ControlProvider.class);
private Hashtable<String,Document> hashTablesReferences = null;
private static final String SEPARATOR_TABLE_REFERENCE_RESSOURCES = ";";
+ private static final String CHEMIN_INFO_DEMAT_DEPENSE = "EnTeteDepense/InfoDematerialisee/";
+ private static final String CHEMIN_INFO_DEMAT_RECETTE = "EnTeteRecette/InfoDematerialisee/";
+ private String infoDemat = "";
+ private Vector<Pair> donneesFlux = new Vector<Pair>();
@Override
public void startDocument() throws SAXException {
@Override
public void endDocument() throws SAXException {
//hashTablesReferences.clear();
+ // on ajoute les données supplémentaires au cch
+ setDonneesFlux(donneesFlux);
}
@Override
public void endPrefixMapping(String prefix, String xpath) throws SAXException {}
@Override
- public void startElement(String uri, String localName, String qName, Attributes atts, String xpath) throws SAXException {}
+ public void startElement(String uri, String localName, String qName, Attributes atts, String xpath) throws SAXException {
+ if (xpath.endsWith(CHEMIN_INFO_DEMAT_DEPENSE) || xpath.endsWith(CHEMIN_INFO_DEMAT_RECETTE)) {
+ infoDemat = atts.getValue("V");
+ Pair id = new Pair("InfoDematerialisee", infoDemat);
+ donneesFlux.add(id);
+ }
+
+ }
@Override
- public ArrayList<ControlReturn> endElement(String uri, String localName, String qName, String xpath) throws SAXException { return null;}
+ public ArrayList<ControlReturn> endElement(String uri, String localName, String qName, String xpath) throws SAXException {
+
+ return null;
+ }
@Override
public void characters(char[] ch, int start, int length, String xpath) throws SAXException {}
import java.util.Collections;
import java.util.Date;
import java.util.Hashtable;
+import java.util.Vector;
import javax.xml.XMLConstants;
import javax.xml.namespace.NamespaceContext;
rapportWriter.writeElement("Libelle", new Pair("V", budg.libelle));
rapportWriter.closeElement("Budget");
- rapportWriter.writeElement("TropAnos", new Pair("V", msgAno));
+ rapportWriter.writeElement("TropAnos", new Pair("V", msgAno));
+
rapportWriter.openElement("Domaines");
String domaines[] = domainesControles.split(" / ");
for (String domain : domaines) {
rapportWriter.closeElement("Domaines");
rapportWriter.openElement("Params");
writeParameters();
- rapportWriter.closeElement("Params");
-
+ rapportWriter.closeElement("Params");
+
+ //ajout des données supplémentaires récupérées dans le flux
+ Vector<Pair> donneesFlux = new Vector<Pair>();
+ donneesFlux = cch.getDonneesFlux();
+ if (donneesFlux.size()>0){
+ rapportWriter.openElement("DonneesFlux");
+ for (int i=0; i<donneesFlux.size(); i++){
+ Pair id = donneesFlux.get(i);
+ rapportWriter.writeElement(id.key, new Pair("V", id.libelle));
+ }
+ rapportWriter.closeElement("DonneesFlux");
+ }
+
// Corps du rapport
rapportWriter.openElement("DonneesRapport");
rapportWriter.openElement("Rapport");