|
From: <de...@us...> - 2010-03-01 22:27:47
|
Revision: 5699
http://fudaa.svn.sourceforge.net/fudaa/?rev=5699&view=rev
Author: deniger
Date: 2010-03-01 22:27:37 +0000 (Mon, 01 Mar 2010)
Log Message:
-----------
Modified Paths:
--------------
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/common/CrueData.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/common/CrueDataImpl.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/AbstractDaoLoi.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterDPTG.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterOPTG.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DHReader.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DHWriter.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalc.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalcPerm.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalcTrans.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/helper/EMHHelper.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/ValidateEMHProperties.java
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/io/common/TestCrueDataImpl.java
trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/builder/EMHManagerBuilder.java
trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/explorer/CrueLauncher.java
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/common/CrueData.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/common/CrueData.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/common/CrueData.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -262,4 +262,14 @@
public void sort();
+ /**
+ * @param casierProfil un casier définit dans le fichiert dptg en tant que bibliothèque
+ */
+ public void registerDefinedCasierProfil(DonPrtGeoProfilCasier casierProfil);
+
+ /**
+ * @param sectionProfil
+ */
+ public void registerDefinedSectionProfil(DonPrtGeoProfilSection sectionProfil);
+
}
\ No newline at end of file
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/common/CrueDataImpl.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/common/CrueDataImpl.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/common/CrueDataImpl.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -357,6 +357,20 @@
}
+ /**
+ * @param casierProfil un casier définit dans le fichiert dptg en tant que bibliothèque
+ */
+ public void registerDefinedCasierProfil(DonPrtGeoProfilCasier casierProfil) {
+ idProfilCasierUse.put(casierProfil.getId(), casierProfil);
+ }
+
+ /**
+ * @param sectionProfil
+ */
+ public void registerDefinedSectionProfil(DonPrtGeoProfilSection sectionProfil) {
+ idProfilSectionUse.put(sectionProfil.getId(), sectionProfil);
+ }
+
public void registerUseCasierProfil(final EMH emh, final String profilId) {
DonPrtGeoProfilCasier casier = getUsedProfilCasier(profilId);
if (casier == null) {
@@ -364,7 +378,9 @@
casier.setNom(profilId);
idProfilCasierUse.put(profilId, casier);
}
- emh.addInfosEMH(casier);
+ if (emh != null) {
+ emh.addInfosEMH(casier);
+ }
}
@@ -375,7 +391,9 @@
section.setNom(profilId);
idProfilSectionUse.put(profilId, section);
}
- emh.addInfosEMH(section);
+ if (emh != null) {
+ emh.addInfosEMH(section);
+ }
}
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/AbstractDaoLoi.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/AbstractDaoLoi.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/AbstractDaoLoi.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -1,5 +1,8 @@
package org.fudaa.dodico.crue.io.dao;
+import com.thoughtworks.xstream.XStream;
+
+import org.apache.commons.lang.StringUtils;
import org.fudaa.dodico.crue.io.common.AbstractSingleConverter;
import org.fudaa.dodico.crue.metier.emh.EnumTypeLoi;
import org.fudaa.dodico.crue.metier.emh.EvolutionFF;
@@ -9,8 +12,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.thoughtworks.xstream.XStream;
-
/**
* Classe abstraite qui permet de factoriser les attributs communs de toutes les lois
*/
@@ -97,7 +98,7 @@
*/
protected static void metierToDaoLoi(final AbstractDaoLoi outLoi, final Loi inLoi) {
outLoi.Nom = inLoi.getNom();
- outLoi.Description = inLoi.getDescription();
+ outLoi.Description = StringUtils.defaultString(inLoi.getDescription());
outLoi.Type = inLoi.getType();
outLoi.EvolutionFF = inLoi.getEvolutionFF();
}
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterDPTG.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterDPTG.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterDPTG.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -69,7 +69,8 @@
final CrueDaoDPTG res = new CrueDaoDPTG();
// -- liste qui assure d'ajouter une seule référence de profil: car un meme profil peut etre referencé plusieurs
// fois
- final Set<DonPrtGeoProfilSection> listeProfilUniqueReference = new HashSet<DonPrtGeoProfilSection>();
+ final Set<String> doneCasierId = new HashSet<String>();
+ final Set<String> doneSectionId = new HashSet<String>();
res.DonPrtGeoProfilSections = new ArrayList<CrueDaoStructureDPTG.ProfilSection>();
res.DonPrtGeoCasiers = new ArrayList<CrueDaoStructureDPTG.AbstractCasier>();
@@ -87,11 +88,11 @@
// -- c'est un profil
if (donnee instanceof DonPrtGeoProfilSection) {
final DonPrtGeoProfilSection donPrtGeoProfilSection = (DonPrtGeoProfilSection) donnee;
- saveDonPrtGeoProfilSection(analyser, res, listeProfilUniqueReference, donPrtGeoProfilSection);
+ convertMetierToDaoSectionsProfils(donPrtGeoProfilSection, res, analyser, doneSectionId);
} else if (donnee instanceof DonPrtGeoProfilCasier) {
+ convertMetierToDaoCasiersProfils((DonPrtGeoProfilCasier) donnee, res.DonPrtGeoCasiers, analyser,
+ doneCasierId);
- convertMetierToDaoCasiersProfils(res.DonPrtGeoCasiers, (DonPrtGeoProfilCasier) donnee, analyser);
-
} else if (donnee instanceof DonPrtGeoBatiCasier) {
final DonPrtGeoBatiCasier bati = (DonPrtGeoBatiCasier) donnee;
final CrueDaoStructureDPTG.BatiCasier batiCasier = new CrueDaoStructureDPTG.BatiCasier();
@@ -113,9 +114,14 @@
List<InfosEMH> infosEMH = metier.getSousModele().getInfosEMH();
final List<DonPrtGeoProfilSection> selectClass = EMHHelper.collectClass(infosEMH, DonPrtGeoProfilSection.class);
for (final DonPrtGeoProfilSection donPrtGeoProfilSection : selectClass) {
- saveDonPrtGeoProfilSection(analyser, res, listeProfilUniqueReference, donPrtGeoProfilSection);
+ convertMetierToDaoSectionsProfils(donPrtGeoProfilSection, res, analyser, doneSectionId);
}
+ final List<DonPrtGeoProfilCasier> selectCasier = EMHHelper.collectClass(infosEMH, DonPrtGeoProfilCasier.class);
+ for (final DonPrtGeoProfilCasier profilCasier : selectCasier) {
+ convertMetierToDaoCasiersProfils(profilCasier, res.DonPrtGeoCasiers, analyser, doneCasierId);
+
+ }
Collections.sort(res.DonPrtGeoBranches, ObjetNommeComparator.INSTANCE);
Collections.sort(res.DonPrtGeoCasiers, ObjetNommeComparator.INSTANCE);
Collections.sort(res.DonPrtGeoProfilSections, ObjetNommeComparator.INSTANCE);
@@ -124,17 +130,17 @@
}
/**
+ * @param in l'objet metier a transformer en dao.
+ * @param out l'endroit ou sont stockés les DAO
* @param analyser le receveur de log
- * @param res l'endroit ou sont stockés les DAO
* @param uniqueRef la liste permettant d'eviter de restocker 2 fois le meme objets
- * @param toSave l'objet metier a transformer en dao.
*/
- private void saveDonPrtGeoProfilSection(final CtuluAnalyze analyser, final CrueDaoDPTG res,
- final Set<DonPrtGeoProfilSection> uniqueRef, final DonPrtGeoProfilSection toSave) {
- if (!uniqueRef.contains(toSave)) {
- convertMetierToDaoSectionsProfils(res.DonPrtGeoProfilSections, toSave, analyser);
+ private void convertMetierToDaoSectionsProfils(final DonPrtGeoProfilSection in, final CrueDaoDPTG out,
+ final CtuluAnalyze analyser, final Set<String> uniqueRef) {
+ if (!uniqueRef.contains(in.getId())) {
+ convertMetierToDaoSectionsProfils(in, out.DonPrtGeoProfilSections, analyser);
// -- on enregistre la reference --//
- uniqueRef.add(toSave);
+ uniqueRef.add(in.getId());
}
}
@@ -142,26 +148,25 @@
/**
* Remplit la premiere partie du fichier DPTG avec le type d'objet: sections profils.
*
- * @param listePersistante
- * @param prtgeo
+ * @param in
+ * @param out
* @param analyser
*/
- private static void convertMetierToDaoSectionsProfils(
- final List<CrueDaoStructureDPTG.ProfilSection> listePersistante, final DonPrtGeoProfilSection prtgeo,
- final CtuluAnalyze analyser) {
+ private static void convertMetierToDaoSectionsProfils(final DonPrtGeoProfilSection in,
+ final List<CrueDaoStructureDPTG.ProfilSection> out, final CtuluAnalyze analyser) {
final CrueDaoStructureDPTG.ProfilSection profilPersistant = new CrueDaoStructureDPTG.ProfilSection();
- profilPersistant.Nom = prtgeo.getNom();
- if (prtgeo.getFente() != null) {
- profilPersistant.LargeurFente = prtgeo.getFente().getLargeurFente();
- profilPersistant.ProfondeurFente = prtgeo.getFente().getProfondeurFente();
+ profilPersistant.Nom = in.getNom();
+ if (in.getFente() != null) {
+ profilPersistant.LargeurFente = in.getFente().getLargeurFente();
+ profilPersistant.ProfondeurFente = in.getFente().getProfondeurFente();
}
// -- Ecriture des lits numerotes --//
- if (prtgeo.getLitNumerote() != null && prtgeo.getLitNumerote().size() > 0) {
+ if (in.getLitNumerote() != null && in.getLitNumerote().size() > 0) {
profilPersistant.LitNumerotes = new ArrayList<CrueDaoStructureDPTG.Lit>();
- for (final LitNumerote litMetier : prtgeo.getLitNumerote()) {
+ for (final LitNumerote litMetier : in.getLitNumerote()) {
final CrueDaoStructureDPTG.Lit litPersist = new CrueDaoStructureDPTG.Lit();
litPersist.IsLitActif = litMetier.getIsLitActif();
litPersist.IsLitMineur = litMetier.getIsLitMineur();
@@ -177,7 +182,7 @@
// -- on ajoute le nom avec un suffixe --//
litPersist.Frot.NomRef = litMetier.getFrot().getNom();
} else {
- analyser.addInfo("io.dptg.frotForLitNotFound.error", prtgeo.getNom());
+ analyser.addInfo("io.dptg.frotForLitNotFound.error", in.getNom());
}
// -- ajout du lit persistant --//
@@ -185,68 +190,75 @@
}
} else {
- analyser.addInfo("io.dptg.convert.noLit.error", prtgeo.getNom());
+ analyser.addInfo("io.dptg.convert.noLit.error", in.getNom());
}
// -- ecriture des series pt --//
- if (CollectionUtils.isNotEmpty(prtgeo.getPtProfil())) {
+ if (CollectionUtils.isNotEmpty(in.getPtProfil())) {
profilPersistant.EvolutionFF = new EvolutionFF();
- final List<PtEvolutionFF> pts = new ArrayList<PtEvolutionFF>(prtgeo.getPtProfil().size());
+ final List<PtEvolutionFF> pts = new ArrayList<PtEvolutionFF>(in.getPtProfil().size());
profilPersistant.EvolutionFF.setPtEvolutionFF(pts);
- for (final PtProfil serie : prtgeo.getPtProfil()) {
+ for (final PtProfil serie : in.getPtProfil()) {
pts.add(new PtEvolutionFF(serie.getYp(), serie.getZ()));
}
} else {
- analyser.addInfo("io.dptg.convert.noProfil.error", prtgeo.getNom());
+ analyser.addInfo("io.dptg.convert.noProfil.error", in.getNom());
}
// -- ajout du profil persistant --//
- listePersistante.add(profilPersistant);
+ out.add(profilPersistant);
}
+ private static void convertMetierToDaoCasiersProfils(final DonPrtGeoProfilCasier in,
+ final List<CrueDaoStructureDPTG.AbstractCasier> out, final CtuluAnalyze analyser, Set<String> idDone) {
+ if (!idDone.contains(in.getId())) {
+ idDone.add(in.getId());
+ convertMetierToDaoCasiersProfils(in, out, analyser);
+ }
+ }
+
/**
* Remplit la deuxieme partie du fichier DPTG avec le type d'objet: casiers profils
*
- * @param listePersistante
- * @param prtgeo
+ * @param in
+ * @param out
* @param analyser
*/
- private static void convertMetierToDaoCasiersProfils(
- final List<CrueDaoStructureDPTG.AbstractCasier> listePersistante, final DonPrtGeoProfilCasier prtgeo,
- final CtuluAnalyze analyser) {
+ private static void convertMetierToDaoCasiersProfils(final DonPrtGeoProfilCasier in,
+ final List<CrueDaoStructureDPTG.AbstractCasier> out, final CtuluAnalyze analyser) {
final CrueDaoStructureDPTG.ProfilCasier profilPersistant = new CrueDaoStructureDPTG.ProfilCasier();
// -- donneee specifique pour le profil casier --//
- profilPersistant.Longueur = prtgeo.getLongueur();
+ profilPersistant.Longueur = in.getLongueur();
- profilPersistant.Nom = prtgeo.getNom();
+ profilPersistant.Nom = in.getNom();
// -- Ecriture du lit utile dans le profil casier --//
- if (prtgeo.getLitUtile() != null) {
+ if (in.getLitUtile() != null) {
profilPersistant.LitUtile = new CrueDaoStructureDPTG.LitUtile();
- final org.fudaa.dodico.crue.metier.emh.LitUtile litMetier = prtgeo.getLitUtile();
+ final org.fudaa.dodico.crue.metier.emh.LitUtile litMetier = in.getLitUtile();
profilPersistant.LitUtile.LimDeb = litMetier.getLimDeb();
profilPersistant.LitUtile.LimFin = litMetier.getLimFin();
} else {
- analyser.addInfo("io.dptg.convert.noLit.error", prtgeo.getNom());
+ analyser.addInfo("io.dptg.convert.noLit.error", in.getNom());
}
// -- ecriture des series pt --//
- if (CollectionUtils.isNotEmpty(prtgeo.getPtProfil())) {
+ if (CollectionUtils.isNotEmpty(in.getPtProfil())) {
profilPersistant.EvolutionFF = new EvolutionFF();
- final List<PtEvolutionFF> pts = new ArrayList<PtEvolutionFF>(prtgeo.getPtProfil().size());
+ final List<PtEvolutionFF> pts = new ArrayList<PtEvolutionFF>(in.getPtProfil().size());
profilPersistant.EvolutionFF.setPtEvolutionFF(pts);
- for (final PtProfil serie : prtgeo.getPtProfil()) {
+ for (final PtProfil serie : in.getPtProfil()) {
pts.add(new PtEvolutionFF(serie.getYp(), serie.getZ()));
}
} else {
- analyser.addInfo("io.dptg.convert.noProfil.error", prtgeo.getNom());
+ analyser.addInfo("io.dptg.convert.noProfil.error", in.getNom());
}
// -- ajout du profil persistant --//
- listePersistante.add(profilPersistant);
+ out.add(profilPersistant);
}
private static void convertMetierToDaoSectionsIdem(final List<CrueDaoStructureDPTG.SectionIdem> listePersistante,
@@ -285,6 +297,7 @@
if (profilGeo == null) {
profilGeo = new DonPrtGeoProfilSection();
+ crueData.registerDefinedSectionProfil(profilGeo);
crueData.getSousModele().addInfosEMH(profilGeo);
}
// else {
@@ -379,52 +392,54 @@
// -- on recupere la branche qu'il faut --//
final String nomProfil = profilPersist.Nom;
// -- on tente de trouver tous les objets referencé par ce profil --//
- final DonPrtGeoProfilCasier profilGeo = crueData.getUsedProfilCasier(nomProfil);
- if (profilGeo == null) {
- analyser.addInfo("io.convert.dptg.profilNotFound.error", nomProfil);
- } else {
+ DonPrtGeoProfilCasier profilCasier = crueData.getUsedProfilCasier(nomProfil);
+ if (profilCasier == null) {
+ profilCasier = new DonPrtGeoProfilCasier(crueData.getCruePropertyDefinitionContainer());
+ profilCasier.setNom(nomProfil);
+ crueData.registerDefinedCasierProfil(profilCasier);
+ crueData.getSousModele().addInfosEMH(profilCasier);
+ }
- // -- on récupére le casier ou le profil et on le stocke dans le emh --//
- // final DonPrtGeoProfilCasier profilGeo = new DonPrtGeoProfilCasier();
- // -- donnee particulieres a ProfilCasier --//
- profilGeo.setLongueur(profilPersist.Longueur);
+ // -- on récupére le casier ou le profil et on le stocke dans le emh --//
+ // final DonPrtGeoProfilCasier profilGeo = new DonPrtGeoProfilCasier();
+ // -- donnee particulieres a ProfilCasier --//
+ profilCasier.setLongueur(profilPersist.Longueur);
- // -- on remplit son contenu --//
- profilGeo.setNom(profilPersist.Nom);
+ // -- on remplit son contenu --//
+ profilCasier.setNom(profilPersist.Nom);
- // -- on remplit les litsNommes --//
- if (profilPersist.LitUtile != null) {
- // final List<LitNumerote> listeLits = new ArrayList<LitNumerote>();
- final CrueDaoStructureDPTG.LitUtile litPersist = profilPersist.LitUtile;
+ // -- on remplit les litsNommes --//
+ if (profilPersist.LitUtile != null) {
+ // final List<LitNumerote> listeLits = new ArrayList<LitNumerote>();
+ final CrueDaoStructureDPTG.LitUtile litPersist = profilPersist.LitUtile;
- final org.fudaa.dodico.crue.metier.emh.LitUtile litUtileMetier = new org.fudaa.dodico.crue.metier.emh.LitUtile();
- litUtileMetier.setLimDeb(litPersist.LimDeb);
- litUtileMetier.setLimFin(litPersist.LimFin);
+ final org.fudaa.dodico.crue.metier.emh.LitUtile litUtileMetier = new org.fudaa.dodico.crue.metier.emh.LitUtile();
+ litUtileMetier.setLimDeb(litPersist.LimDeb);
+ litUtileMetier.setLimFin(litPersist.LimFin);
- // -- ajout de la liste de litNum dans donprtgeo --//
- // listeLits.add(litNum);
- profilGeo.setLitUtile(litUtileMetier);
+ // -- ajout de la liste de litNum dans donprtgeo --//
+ // listeLits.add(litNum);
+ profilCasier.setLitUtile(litUtileMetier);
- } else {
- analyser.addInfo("io.dptg.profil.no.lit.num.error", profilPersist.Nom);
- }
+ } else {
+ analyser.addInfo("io.dptg.profil.no.lit.num.error", profilPersist.Nom);
+ }
- // -- on remplit les séries --//
- if (profilPersist.EvolutionFF != null && profilPersist.EvolutionFF.getPtEvolutionFF() != null) {
- final List<PtProfil> listeProfils = new ArrayList<PtProfil>();
+ // -- on remplit les séries --//
+ if (profilPersist.EvolutionFF != null && profilPersist.EvolutionFF.getPtEvolutionFF() != null) {
+ final List<PtProfil> listeProfils = new ArrayList<PtProfil>();
- for (final PtEvolutionFF buff : profilPersist.EvolutionFF.getPtEvolutionFF()) {
- listeProfils.add(new PtProfil(buff.getX(), buff.getY()));
- }
+ for (final PtEvolutionFF buff : profilPersist.EvolutionFF.getPtEvolutionFF()) {
+ listeProfils.add(new PtProfil(buff.getX(), buff.getY()));
+ }
- // -- ajout de la liste de profils dans le donprtgeo --//
- profilGeo.setPtProfil(listeProfils);
+ // -- ajout de la liste de profils dans le donprtgeo --//
+ profilCasier.setPtProfil(listeProfils);
- } else {
- analyser.addInfo("io.dptg.convert.noProfil.error", nomProfil);
- }
+ } else {
+ analyser.addInfo("io.dptg.convert.noProfil.error", nomProfil);
+ }
- }
} else if (casier instanceof CrueDaoStructureDPTG.BatiCasier) {
final CrueDaoStructureDPTG.BatiCasier bati = (CrueDaoStructureDPTG.BatiCasier) casier;
// -- on recupere la branche qu'il faut --//
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterOPTG.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterOPTG.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterOPTG.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -4,6 +4,8 @@
package org.fudaa.dodico.crue.io.dao;
import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
import java.util.Map;
import org.apache.commons.collections.BidiMap;
@@ -22,6 +24,7 @@
import org.fudaa.dodico.crue.metier.emh.Regle;
import org.fudaa.dodico.crue.metier.emh.ValParamDouble;
import org.fudaa.dodico.crue.metier.emh.ValParamEntier;
+import org.fudaa.dodico.crue.metier.helper.RegleTypeComparator;
import org.fudaa.dodico.crue.validation.CruePrefix;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -96,7 +99,9 @@
dao.Regles = new ArrayList<RegleDAO>();
final BidiMap classToEnum = getCorrespondance();
- for (final Regle regleMetier : metier.getRegle()) {
+ List<Regle> rgs = new ArrayList<Regle>(metier.getRegle());
+ Collections.sort(rgs, RegleTypeComparator.INSTANCE);
+ for (final Regle regleMetier : rgs) {
final Class daoClass = (Class) classToEnum.getKey(regleMetier.getType());
RegleDAO reglePersist = null;
try {
@@ -123,5 +128,4 @@
return dao;
}
-
}
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DHReader.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DHReader.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DHReader.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -887,10 +887,10 @@
int nbEtatPermanent = 0;
final int nbColExpected = nbConlim + (dhContainsRuis ? 1 : 0);
- DonCLimMScenario scenario = res.getConditionsLim();
- if (scenario == null) {
- scenario = new DonCLimMScenario();
- res.setConditionsLim(scenario);
+ DonCLimMScenario dclmScenario = res.getConditionsLim();
+ if (dclmScenario == null) {
+ dclmScenario = new DonCLimMScenario();
+ res.setConditionsLim(dclmScenario);
}
final List<CalcPseudoPerm> calculsPermanents = new ArrayList<CalcPseudoPerm>();
@@ -1072,7 +1072,7 @@
// reader.readLine();
if (CollectionUtils.isNotEmpty(calculsPermanents)) {
- scenario.setCalcPseudoPerm(calculsPermanents);
+ dclmScenario.setCalcPseudoPerm(calculsPermanents);
}
if (isFine()) {
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DHWriter.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DHWriter.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DHWriter.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -37,7 +37,6 @@
import org.fudaa.dodico.crue.metier.emh.CatEMHCasier;
import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud;
import org.fudaa.dodico.crue.metier.emh.DefaultValues;
-import org.fudaa.dodico.crue.metier.emh.DonCLimMScenario;
import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheSaintVenant;
import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtCasierProfil;
import org.fudaa.dodico.crue.metier.emh.DonPrtCIni;
@@ -57,6 +56,7 @@
import org.fudaa.dodico.crue.metier.emh.Loi;
import org.fudaa.dodico.crue.metier.emh.LoiDF;
import org.fudaa.dodico.crue.metier.emh.LoiFF;
+import org.fudaa.dodico.crue.metier.emh.OrdCalc;
import org.fudaa.dodico.crue.metier.emh.OrdCalcPseudoPermIniCalcReprise;
import org.fudaa.dodico.crue.metier.emh.OrdCalcScenario;
import org.fudaa.dodico.crue.metier.emh.OrdPrtCIniModeleBase;
@@ -187,20 +187,19 @@
final List<CatEMHBranche> branches = EMHHelper.collectEMHActivable(data.getBranches());
final boolean aDonneesGen = containsDPTI(branches);
- // On a des données permanentes si au moins un calcul permanent existe dans DCLM
- // On a des données transitoires si au moins un calcul transitoire existe dans DCLM
- final DonCLimMScenario dclm = data.getConditionsLim();
+ // On a des données permanentes si au moins un calcul permanent existe dans OCAL
+ // On a des données transitoires si au moins un calcul transitoire existe dans OCAL
+ final OrdCalcScenario ocal = data.getOrdCalc();
boolean modru = false;
- if (dclm != null) {
- final List<CalcPseudoPerm> calcPseudoPerm = dclm.getCalcPseudoPerm();
- aDonneesPerm = CollectionUtils.isNotEmpty(calcPseudoPerm);
- final List<CalcTrans> calcTrans = dclm.getCalcTrans();
- aDonneesTrans = CollectionUtils.isNotEmpty(calcTrans);
+ if (ocal != null) {
+ final List<OrdCalc> ordCalc = ocal.getOrdCalc();
+ aDonneesPerm = EMHHelper.containsPermanent(ordCalc);
+ aDonneesTrans = EMHHelper.containsTransitoire(ordCalc);
boolean modeLateral = isModeLateral(data);
// cru
if (modeLateral
- && !computeQruisIdentique(coeffsRuisParCalcPerm, calcPseudoPerm, data.getCruePropertyDefinitionContainer())) { return; }
+ && !computeQruisIdentique(coeffsRuisParCalcPerm, ordCalc, data.getCruePropertyDefinitionContainer())) { return; }
// S'il existe au moins un débit de ruissellement pour un calcul permanent on met cru à 1/idem pour cofqrq
if (modeLateral && MapUtils.isNotEmpty(coeffsRuisParCalcPerm)) {
@@ -244,7 +243,6 @@
}
// trepr
- final OrdCalcScenario ocal = data.getOrdCalc();
if (ocal != null) {
final OrdCalcPseudoPermIniCalcReprise reprise = EMHHelper.selectFirstOfClass(ocal.getOrdCalc(),
OrdCalcPseudoPermIniCalcReprise.class);
@@ -579,8 +577,9 @@
return res;
}
- private boolean computeQruisIdentique(final Map<String, Double> coeffsRuisParCalcPerm,
- final List<CalcPseudoPerm> calcPseudoPerm, CrueProperties props) {
+ private boolean computeQruisIdentique(final Map<String, Double> coeffsRuisParCalcPerm, final List<OrdCalc> ordCalcs,
+ CrueProperties props) {
+ List<CalcPseudoPerm> calcPseudoPerm = EMHHelper.collectCalcPseudoPerm(ordCalcs);
// Pour déterminer s'il existe un coefficient de ruissellement commun pour un calcul permanent, il faut que le
// coefficient de chaque branche Saint Venant de ce calcul soit le même.
for (int i = 0, imax = calcPseudoPerm.size(); i < imax; i++) {
@@ -697,9 +696,9 @@
writeCom("");
writeCom(" Definition des types des conditions aux limites ");
- final DonCLimMScenario dclm = data.getConditionsLim();
- if (dclm != null) {
- final List<CalcPseudoPerm> calcsPerms = dclm.getCalcPseudoPerm();
+ final OrdCalcScenario ocal = data.getOrdCalc();
+ if (ocal != null) {
+ final List<CalcPseudoPerm> calcsPerms = EMHHelper.collectCalcPseudoPerm(ocal.getOrdCalc());
if (CollectionUtils.isNotEmpty(calcsPerms)) {
// Hashtable typesCL = new Hashtable();
@@ -944,8 +943,8 @@
writeCom("");
writeCom(" Definition des types des conditions aux limites ");
- final DonCLimMScenario dclm = data.getConditionsLim();
- final List<CalcTrans> calcsTrans = dclm.getCalcTrans();
+ // final DonCLimMScenario dclm = data.getConditionsLim();
+ final List<CalcTrans> calcsTrans = EMHHelper.collectCalcTrans(data.getOrdCalc().getOrdCalc());
if (CollectionUtils.isEmpty(calcsTrans)) { return; }
if (calcsTrans.size() > 1) {
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalc.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalc.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalc.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -7,6 +7,15 @@
/** @pdOid 2d1a78e8-7a6f-4820-a7d7-042905bb9e2e */
public abstract class OrdCalc {
+ /**
+ * @return true si transitoire
+ */
+ public abstract boolean isTransitoire();
+
+ public final boolean isPermanent() {
+ return !isTransitoire();
+ }
+
public abstract Calc getCalc();
public final String getType() {
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalcPerm.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalcPerm.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalcPerm.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -1,10 +1,17 @@
/***********************************************************************
- * Module: OrdCalcPerm.java
- * Author: deniger
- * Purpose: Defines the Class OrdCalcPerm
+ * Module: OrdCalcPerm.java Author: deniger Purpose: Defines the Class OrdCalcPerm
***********************************************************************/
package org.fudaa.dodico.crue.metier.emh;
/** @pdOid c4f5488c-2bd2-42d0-80f8-bf4c880d7839 */
-public abstract class OrdCalcPerm extends OrdCalc {}
\ No newline at end of file
+public abstract class OrdCalcPerm extends OrdCalc {
+ /**
+ * @return true si transitoire
+ */
+ @Override
+ public boolean isTransitoire() {
+ return false;
+ }
+
+}
\ No newline at end of file
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalcTrans.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalcTrans.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/OrdCalcTrans.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -1,7 +1,5 @@
/***********************************************************************
- * Module: OrdCalcTrans.java
- * Author: deniger
- * Purpose: Defines the Class OrdCalcTrans
+ * Module: OrdCalcTrans.java Author: deniger Purpose: Defines the Class OrdCalcTrans
***********************************************************************/
package org.fudaa.dodico.crue.metier.emh;
@@ -11,6 +9,14 @@
/** @pdRoleInfo migr=no name=CalcTrans assc=association96 mult=1..1 */
private CalcTrans calcTrans;
+ /**
+ * @return true si transitoire
+ */
+ @Override
+ public boolean isTransitoire() {
+ return true;
+ }
+
/** @pdGenerated default parent getter */
public CalcTrans getCalcTrans() {
return calcTrans;
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/helper/EMHHelper.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/helper/EMHHelper.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/helper/EMHHelper.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -15,6 +15,7 @@
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPerm;
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPermBrancheSaintVenantQruis;
import org.fudaa.dodico.crue.metier.emh.CalcPseudoPermCasierProfilQruis;
+import org.fudaa.dodico.crue.metier.emh.CalcTrans;
import org.fudaa.dodico.crue.metier.emh.CatEMHActivable;
import org.fudaa.dodico.crue.metier.emh.CatEMHBranche;
import org.fudaa.dodico.crue.metier.emh.CatEMHCasier;
@@ -27,6 +28,7 @@
import org.fudaa.dodico.crue.metier.emh.DonPrtCIni;
import org.fudaa.dodico.crue.metier.emh.DonPrtGeo;
import org.fudaa.dodico.crue.metier.emh.DonPrtGeoNomme;
+import org.fudaa.dodico.crue.metier.emh.DonPrtGeoProfilCasier;
import org.fudaa.dodico.crue.metier.emh.DonPrtGeoProfilSection;
import org.fudaa.dodico.crue.metier.emh.EMH;
import org.fudaa.dodico.crue.metier.emh.EMHModeleBase;
@@ -38,6 +40,7 @@
import org.fudaa.dodico.crue.metier.emh.EnumTypeEMH;
import org.fudaa.dodico.crue.metier.emh.InfosEMH;
import org.fudaa.dodico.crue.metier.emh.ObjetNomme;
+import org.fudaa.dodico.crue.metier.emh.OrdCalc;
import org.fudaa.dodico.crue.metier.emh.RelationEMH;
import org.fudaa.dodico.crue.metier.emh.RelationEMHBrancheContientNoeud;
import org.fudaa.dodico.crue.metier.emh.RelationEMHCasierDansNoeud;
@@ -73,7 +76,81 @@
}
}
+ public static final class OrdCalToCalc implements Transformer {
+ public Object transform(final Object input) {
+ return ((OrdCalc) input).getCalc();
+ }
+ }
+
+ public static final class OrdCalcIsTransitoire implements Predicate {
+
+ public boolean evaluate(final Object object) {
+ return ((OrdCalc) object).isTransitoire();
+ }
+ }
+
+ public static final class OrdCalcIsPermanent implements Predicate {
+ public boolean evaluate(final Object object) {
+ return ((OrdCalc) object).isPermanent();
+ }
+ }
+
+ public static final class OrdCalcIsPseudoPermanent implements Predicate {
+ public boolean evaluate(final Object object) {
+ return ((OrdCalc) object).isPermanent() && ((OrdCalc) object).getCalc() instanceof CalcPseudoPerm;
+ }
+ }
+
/**
+ * @author deniger return true si l'ordCalc possede un calcul de type CalcTrans.
+ */
+ public static final class OrdCalcIsCalcTrans implements Predicate {
+ public boolean evaluate(final Object object) {
+ return ((OrdCalc) object).isTransitoire() && ((OrdCalc) object).getCalc() instanceof CalcTrans;
+ }
+ }
+
+ /**
+ * @param in
+ * @return true si la collection contient au moins un ordre de calcul transitoire
+ */
+ public static boolean containsTransitoire(final Collection<OrdCalc> in) {
+ return CollectionUtils.exists(in, new OrdCalcIsTransitoire());
+ }
+
+ /**
+ * @param in
+ * @return true si la collection contient au moins un ordre de calcul transitoire
+ */
+ public static List<CalcPseudoPerm> collectCalcPseudoPerm(final Collection<OrdCalc> in) {
+ if (in == null) { return null; }
+ final Collection select = CollectionUtils.select(in, new OrdCalcIsPseudoPermanent());
+ final List<CalcPseudoPerm> res = new ArrayList<CalcPseudoPerm>(select.size());
+ CollectionUtils.collect(select, new OrdCalToCalc(), res);
+ return res;
+ }
+
+ /**
+ * @param in
+ * @return true si la collection contient au moins un ordre de calcul transitoire
+ */
+ public static List<CalcTrans> collectCalcTrans(final Collection<OrdCalc> in) {
+ if (in == null) { return null; }
+ final Collection select = CollectionUtils.select(in, new OrdCalcIsCalcTrans());
+ final List<CalcTrans> res = new ArrayList<CalcTrans>(select.size());
+ CollectionUtils.collect(select, new OrdCalToCalc(), res);
+ return res;
+ }
+
+ /**
+ * @param in
+ * @return true si la collection contient au moins un ordre de calcul permanent
+ */
+ public static boolean containsPermanent(final Collection<OrdCalc> in) {
+ return CollectionUtils.exists(in, new OrdCalcIsPermanent());
+ }
+
+ /**
* @author deniger
*/
public static final class TransformerRelationToEMH implements Transformer {
@@ -508,7 +585,8 @@
* @return le noeud associe
*/
public static CatEMHNoeud getNoeudCasier(final CatEMHCasier emh) {
- RelationEMHNoeudContientCasier rel = selectFirstOfClass(emh.getRelationEMH(), RelationEMHNoeudContientCasier.class);
+ final RelationEMHNoeudContientCasier rel = selectFirstOfClass(emh.getRelationEMH(),
+ RelationEMHNoeudContientCasier.class);
return rel == null ? null : rel.getEmh();
}
@@ -536,11 +614,11 @@
* @param classOfRelation la classe de la relation cherchée
* @return la collection voulue.
*/
- public static <T extends RelationEMH> Collection<T> selectRelationOfType(final EMH emh, Class<T> classOfRelation) {
+ public static <T extends RelationEMH> Collection<T> selectRelationOfType(final EMH emh, final Class<T> classOfRelation) {
if (CollectionUtils.isEmpty(emh.getRelationEMH())) { return Collections.emptyList(); }
final EMHHelperPredicate.PredicateRelationEMHContientId pred = new EMHHelperPredicate.PredicateRelationEMHContientId(
null, classOfRelation, null);
- Collection<T> res = new ArrayList<T>(emh.getRelationEMH().size());
+ final Collection<T> res = new ArrayList<T>(emh.getRelationEMH().size());
CollectionUtils.select(emh.getRelationEMH(), pred, res);
return res;
}
@@ -608,10 +686,8 @@
res.addAllRelations(collectClass(sousModele.getRelationEMH(), RelationEMHContient.class));
res.getFrtConteneur().addAllFrt(sousModele.getFrtConteneur().getListFrt());
- // on ajoute les DonPrtGeoProfilSection stockées dans le sous-modele ( le non-utilises).
- final List<DonPrtGeoProfilSection> selectClass = EMHHelper.collectClass(sousModele.getInfosEMH(),
- DonPrtGeoProfilSection.class);
- res.addAllInfos(selectClass);
+ res.addAllInfos(EMHHelper.collectClass(sousModele.getInfosEMH(), DonPrtGeoProfilSection.class));
+ res.addAllInfos(EMHHelper.collectClass(sousModele.getInfosEMH(), DonPrtGeoProfilCasier.class));
}
res.sort();
@@ -649,7 +725,7 @@
* @param distance la distance actuelle
* @return l'entier a utiliser pour diviser la distance afin de créer des profils distancés de moins de distmax.
*/
- public static int getDistDiviseurForDistMax(final double distmax, double distance) {
+ public static int getDistDiviseurForDistMax(final double distmax, final double distance) {
return (int) Math.ceil(distance / distmax);
}
@@ -658,10 +734,10 @@
* @param props
* @return null si different ou si pas de CalcPseudoPerm*Qruis
*/
- public static Double isQruisConstant(final CalcPseudoPerm calcPerm, CrueProperties props) {
+ public static Double isQruisConstant(final CalcPseudoPerm calcPerm, final CrueProperties props) {
final List<CalcPseudoPermBrancheSaintVenantQruis> calcQruis = calcPerm.getCalcPseudoPermBrancheSaintVenantQruis();
final List<CalcPseudoPermCasierProfilQruis> calcCasierQruis = calcPerm.getCalcPseudoPermCasierProfilQruis();
- double eps = props.getEpsilon("qRuis");
+ final double eps = props.getEpsilon("qRuis");
if (CollectionUtils.isNotEmpty(calcQruis) || CollectionUtils.isNotEmpty(calcCasierQruis)) {
double qruis = 0;
boolean qruisSet = false;
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/ValidateEMHProperties.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/ValidateEMHProperties.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/ValidateEMHProperties.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -24,7 +24,6 @@
import org.fudaa.dodico.crue.metier.emh.CatEMHBranche;
import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud;
import org.fudaa.dodico.crue.metier.emh.CatEMHSection;
-import org.fudaa.dodico.crue.metier.emh.DonCLimMScenario;
import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheBarrageFilEau;
import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheBarrageGenerique;
import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheNiveauxAssocies;
@@ -72,6 +71,7 @@
import org.fudaa.dodico.crue.metier.emh.LoiDF;
import org.fudaa.dodico.crue.metier.emh.LoiFF;
import org.fudaa.dodico.crue.metier.emh.ObjetNomme;
+import org.fudaa.dodico.crue.metier.emh.OrdCalcScenario;
import org.fudaa.dodico.crue.metier.emh.OrdPrtGeoModeleBase;
import org.fudaa.dodico.crue.metier.emh.OrdResScenario;
import org.fudaa.dodico.crue.metier.emh.ParamCalcScenario;
@@ -207,9 +207,9 @@
}
private void computeQruis(final Object o) {
- if (!(o instanceof DonCLimMScenario)) { return; }
- final DonCLimMScenario clim = (DonCLimMScenario) o;
- final List<CalcPseudoPerm> calcPseudoPerm = clim.getCalcPseudoPerm();
+ if (!(o instanceof OrdCalcScenario)) { return; }
+ final OrdCalcScenario ocal = (OrdCalcScenario) o;
+ final List<CalcPseudoPerm> calcPseudoPerm = EMHHelper.collectCalcPseudoPerm(ocal.getOrdCalc());
for (final CalcPseudoPerm calcPerm : calcPseudoPerm) {
// Il faut au moins une branche saint venant pour considérer qu'il y a un débit de ruissellement (identique)
final List<CalcPseudoPermBrancheSaintVenantQruis> calcQruis = calcPerm
Modified: trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/io/common/TestCrueDataImpl.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/io/common/TestCrueDataImpl.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/io/common/TestCrueDataImpl.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -20,7 +20,7 @@
* Test du conteneur de lois.
*/
public void testAddLoi() {
- final CrueDataImpl impl = new CrueDataImpl(CrueLoaderPropertiesDefault.DEFAULT);
+ final CrueData impl = new CrueDataImpl(CrueLoaderPropertiesDefault.DEFAULT);
final List<Loi> lois = new ArrayList<Loi>();
lois.add(new LoiDF());
impl.getLoiConteneur().addAllLois(lois);
Modified: trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/builder/EMHManagerBuilder.java
===================================================================
--- trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/builder/EMHManagerBuilder.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/builder/EMHManagerBuilder.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -71,7 +71,7 @@
final Object entryValue = entry.getValue();
final boolean isLitNumerote = "litNumerote".equals(name);
- final boolean isFente = "fente".equals(name);
+ final boolean isFente = "fente".equals(name) && entryValue != null;
final boolean isPtProfil = "ptProfil".equals(name);
final boolean isOrdCalc = "ordCalc".equals(name);
final boolean isRegle = "regle".equals(name);
@@ -96,9 +96,6 @@
&& !isFente && !isParamNumCalc && isCollectOrIterator(entryValue)) {
continue;
}
- if (entryValue instanceof Iterator) {
- System.err.println("stop");
- }
final boolean isObjetNomme = entryValue instanceof ObjetNomme;
String value = null;
if (isPtProfil) {
Modified: trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/explorer/CrueLauncher.java
===================================================================
--- trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/explorer/CrueLauncher.java 2010-03-01 00:33:40 UTC (rev 5698)
+++ trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/explorer/CrueLauncher.java 2010-03-01 22:27:37 UTC (rev 5699)
@@ -76,8 +76,8 @@
infoCrue_.banner = new BuIcon(pathLogo);
// infoCrue_.logo = new BuIcon(pathLogo);
infoCrue_.name = "Fudaa-Crue";
- infoCrue_.version = "0.17";
- infoCrue_.date = "26-Fevrier-2010";
+ infoCrue_.version = "0.18";
+ infoCrue_.date = "01-Mars-2010";
infoCrue_.rights = "";
infoCrue_.contact = "fu...@ge...";
infoCrue_.license = "GPL2";
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|