|
From: <de...@us...> - 2009-07-05 22:35:56
|
Revision: 4901
http://fudaa.svn.sourceforge.net/fudaa/?rev=4901&view=rev
Author: deniger
Date: 2009-07-05 22:35:48 +0000 (Sun, 05 Jul 2009)
Log Message:
-----------
Modified Paths:
--------------
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/ctulu/CtuluDefaultLogFormatter.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/common/DateDurationConverter.java
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/CrueConverterDCSP.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/CrueConverterDRSO.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueConverterETU.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/dao/CrueDaoStructureOPTG.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueHelper.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/dao/CrueXmlReaderWriterImpl.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/AbstractCrue9Reader.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/AbstractCrue9Writer.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileReader.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/DCFileWriter.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/io/neuf/FCBSequentialReader.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/STRReader.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/io/neuf/STRSequentialReader.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/EMHFactory.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/EMHProjet.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/ManagerEMHScenario.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/Calc.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/CatEMHBranche.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/DonFrt.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtGeoBatiCasier.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtGeoProfilCasier.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/DonPrtGeoProfilSection.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/EMH.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/EMHScenario.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/LigneForce.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/LitNomme.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/Loi.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/ObjetNomme.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/ParamNumCalcPseudoPerm.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/Regle.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/ResPrtData.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/ResPrtDataLitPos.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/ResPrtGeoSection.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/metier/emh/ValParam.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/projet/ScenarioExporterCrue9.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/projet/ScenarioLoader.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/projet/ScenarioLoaderCrue9.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/projet/ScenarioSaver.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/projet/ScenarioSaver10.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/projet/ScenarioSaverCrue9.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/CruePrefix.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/NumberPropertyValidator.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/NumberPropertyValidatorsBuilder.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/NumberRangeValidator.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/ValidateModeleScenario.java
trunk/soft/fudaa-crue/dodico/src/main/resources/org/fudaa/dodico/crue/common/commonMessages.properties
trunk/soft/fudaa-crue/dodico/src/main/resources/org/fudaa/dodico/crue/validation/validation.txt
trunk/soft/fudaa-crue/dodico/src/main/resources/xsd/etu-1.0.0.xsd
trunk/soft/fudaa-crue/dodico/src/main/resources/xsd/frag-dptg-1.0.0.xsd
trunk/soft/fudaa-crue/dodico/src/main/resources/xsd/frag-pnum-1.0.0.xsd
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/comparaison/TestComparaisonFactory.java
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/io/TestCrueDC.java
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/io/TestCrueDH.java
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/io/TestCrueOPTGFile.java
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Etude.etu.xml
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.dc
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.dh
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele4-1.drso.xml
trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/common/CommonGuiLib.java
trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/common/CrueCommonImplementation.java
trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/common/CrueEditorImplementation.java
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/projet/CrueProjet.java
trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/projet/ScenarioLoaderUI.java
trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/projet/ScenarioSaverUI.java
trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/crue/view/CrueFilleScenarioManager.java
trunk/soft/fudaa-crue/fudaa/src/main/resources/org/fudaa/fudaa/crue/common/ihmMessages.properties
Added Paths:
-----------
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonGroup.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonNode.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonNodeFinal.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertComparaisonConteneur.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertCompare.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOn.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItem.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItemMerge.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItemRequest.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/common/
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/common/ComparaisonMessages.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/AbstractConfCompare.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/AbstractConfSelectionItem.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfComparaison.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfComparaisonConteneur.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfCompare.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfCompareListe.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfCompareObject.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfCompareSpecific.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfOption.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfSelection.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfSelectionItem.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfSelectionItemMerge.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/config/ConfSelectionItemRequete.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/io/
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/io/ReaderConfig.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/AbstractEqualsTester.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/AbstractTemplateEqualsTesterDouble.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTester.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterArray.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterArrayDouble.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterArrayFloat.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterArrayInteger.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterArrayLong.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterBean.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterCollection.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterDate.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterDouble.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterDuration.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterInteger.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterIsIncludeCollection.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterItemBuilder.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterLong.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterObject.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterPeriod.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/EqualsTesterPoint2D.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/FactoryEqualsTester.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/ResultatTest.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/TemplateEqualsTesterLong.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/TesterContext.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/tester/TesterContextFactory.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/ValidateEMHProperties.java
trunk/soft/fudaa-crue/dodico/src/main/resources/org/fudaa/dodico/crue/comparaison/common/
trunk/soft/fudaa-crue/dodico/src/main/resources/org/fudaa/dodico/crue/comparaison/common/comparaisonMessages.properties
trunk/soft/fudaa-crue/dodico/src/main/resources/org/fudaa/dodico/crue/comparaison/io/
trunk/soft/fudaa-crue/dodico/src/main/resources/org/fudaa/dodico/crue/comparaison/io/comparaison-1.0.0.xsd
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/comparaison/TestConvertCompare.java
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/comparaison/TestConvertSelectOn.java
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/comparaison/io/
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/comparaison/io/TestReaderConfig.java
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/validation/TestEMHPropertiesValidator.java
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele6.dc
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele6.dh
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele7.dc
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele7.dh
trunk/soft/fudaa-crue/dodico/src/test/resources/org/fudaa/dodico/crue/comparaison/
trunk/soft/fudaa-crue/dodico/src/test/resources/org/fudaa/dodico/crue/comparaison/io/
trunk/soft/fudaa-crue/dodico/src/test/resources/org/fudaa/dodico/crue/comparaison/io/testComparaison.xml
Removed Paths:
-------------
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/AbstractEqualsTester.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/AbstractTemplateEqualsTesterDouble.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/BuilderEqualsTesterItem.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTester.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArray.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayDouble.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayFloat.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayInteger.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayLong.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterBean.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterCollection.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterDate.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterDouble.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterDuration.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterInteger.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterLong.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterObject.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterPeriod.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterPoint2D.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/FactoryEqualsTester.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/TemplateEqualsTesterLong.java
trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/validation/EMHPropertiesValidator.java
trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/validation/ExampleEMHPropertiesValidator.java
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest.zip
trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTestNew.zip
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/ctulu/CtuluDefaultLogFormatter.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/ctulu/CtuluDefaultLogFormatter.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/ctulu/CtuluDefaultLogFormatter.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -11,8 +11,6 @@
import java.util.logging.LogRecord;
import java.util.logging.SimpleFormatter;
-import com.memoire.fu.FuLib;
-
/**
* Formateur par defaut pour les logs
*
@@ -135,10 +133,7 @@
// final Map<String, Object> params = (Map<String, Object>) parameters[0];
if (catalog != null) {
// TODO a ameliorer...
- for (int i = 0; i < parameters.length; i++) {
- format = FuLib.replace(format, "{" + i + "}", parameters[i].toString());
-
- }
+ format = MessageFormat.format(format, parameters);
}
// final StringBuilder res = new StringBuilder(format.length() + parameters.length * 20);
// res.append(format).append(" ");
Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/common/DateDurationConverter.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/common/DateDurationConverter.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/common/DateDurationConverter.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -104,7 +104,8 @@
* @return la duration correspondante
*/
public static Duration getDuration(final String xsdDuration) {
- return getDaysHourMinSecPeriod(xsdDuration).toStandardDuration();
+ if (xsdDuration == null) { return null; }
+ return getDaysHourMinSecPeriod(xsdDuration.trim()).toStandardDuration();
}
/**
@@ -112,7 +113,8 @@
* @return la date
*/
public static LocalDateTime getDate(final String xsdDuration) {
- return XSD_DATE_PARSER.parseDateTime(xsdDuration).toLocalDateTime();
+ if (xsdDuration == null) { return null; }
+ return XSD_DATE_PARSER.parseDateTime(xsdDuration.trim()).toLocalDateTime();
}
/**
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/AbstractEqualsTester.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/AbstractEqualsTester.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/AbstractEqualsTester.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,34 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-
-/**
- * Tests de comparaison par défaut gérant les null.
- *
- * @author denf01a
- * @creation 22 juin 2009
- * @version
- * @param <T>
- */
-public abstract class AbstractEqualsTester<T> implements EqualsTester<T> {
-
- public final boolean isSame(final T o1, final T o2, ComparaisonResult res) {
- if (o1 == o2) { return true; }
- if (o1 == null || o2 == null) { return false; }
- // try {
- return isSameSafe(o1, o2, res);
- // } catch (ClassCastException e) {
- // // FIXME Auto-generated catch block
- // e.printStackTrace();
- // }
- // return false;
- }
-
- /**
- * @param o1 non null
- * @param o2 non null
- * @param res FIXME
- * @return true si egaux.
- */
- public abstract boolean isSameSafe(T o1, T o2, ComparaisonResult res);
-
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/AbstractTemplateEqualsTesterDouble.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/AbstractTemplateEqualsTesterDouble.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/AbstractTemplateEqualsTesterDouble.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,39 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-/**
- * un template pour comparer des long.
- *
- * @author denf01a
- * @creation 18 juin 2009
- * @version
- * @param <T> le type d'objet a comparer.
- */
-public abstract class AbstractTemplateEqualsTesterDouble<T> extends AbstractEqualsTester<T> {
-
- private double eps = 0;
-
- /**
- * @return l'epsilon utilise pour les comparaison
- */
- public double getEps() {
- return eps;
- }
-
- /**
- * @param eps l'epsilon utilise pour les comparaison
- */
- public void setEps(final double eps) {
- this.eps = Math.abs(eps);
- }
-
- /**
- * @param d1 le double a comparer
- * @param d2 le double a comparer
- * @return true si egaux a eps pres.
- */
- public boolean isSameDouble(final double d1, final double d2) {
- if (eps > 0) { return Math.abs(d1 - d2) <= eps; }
- return d1 == d2;
- }
-
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/BuilderEqualsTesterItem.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/BuilderEqualsTesterItem.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/BuilderEqualsTesterItem.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,140 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-import java.util.Map;
-
-import org.joda.time.Duration;
-import org.joda.time.LocalDateTime;
-import org.joda.time.Period;
-
-/**
- * @author denf01a
- * @creation 24 juin 2009
- * @version
- * @param <T>
- */
-public abstract class BuilderEqualsTesterItem<T extends EqualsTester> {
-
- protected static final LongTester LONG_TESTER = new LongTester();
-
- protected static final IntegerTester INTEGER_TESTER = new IntegerTester();
-
- protected static final DoubleTester DOUBLE_TESTER = new DoubleTester();
-
- protected static final EqualsTesterInteger ZERO_INT_TESTER = new EqualsTesterInteger();
- protected static final EqualsTesterLong ZERO_LONG_TESTER = new EqualsTesterLong();
- protected static final EqualsTesterObject BASIC_OBJECT_TESTER = new EqualsTesterObject();
-
- protected static void addDefault(final Map<Class, BuilderEqualsTesterItem> dest) {
- final DoubleTester d = DOUBLE_TESTER;
- dest.put(Double.class, d);
- dest.put(Float.class, d);
- dest.put(Integer.class, INTEGER_TESTER);
- dest.put(Long.class, LONG_TESTER);
- dest.put(Duration.class, new DurationTester());
- dest.put(Period.class, new PeriodTester());
- dest.put(LocalDateTime.class, new DateTester());
- dest.put(String.class, new BasicObjectTester());
- }
-
- public static class BasicObjectTester extends BuilderEqualsTesterItem<EqualsTesterObject> {
-
- @Override
- protected EqualsTesterObject build(final FactoryEqualsTester factory, final String propName, final Class propClass,
- final Class parentClass) {
- return BASIC_OBJECT_TESTER;
- }
- }
-
- public static class DateTester extends BuilderEqualsTesterItem<EqualsTesterDate> {
-
- private static final EqualsTesterDate ZERO = new EqualsTesterDate();
- static {
- ZERO.setEps(1E-20);
- }
-
- @Override
- protected EqualsTesterDate build(final FactoryEqualsTester factory, final String propName, final Class propClass,
- final Class parentClass) {
- final double eps = factory.getEpsFor(propName);
- if (eps <= 1E-20) { return ZERO; }
- final EqualsTesterDate res = new EqualsTesterDate();
- res.setEps(eps);
- return res;
- }
- }
-
- public static class DoubleTester extends BuilderEqualsTesterItem<EqualsTesterDouble> {
-
- private static final EqualsTesterDouble ZERO = new EqualsTesterDouble();
- static {
- ZERO.setEps(1E-20);
- }
-
- @Override
- protected EqualsTesterDouble build(final FactoryEqualsTester factory, final String propName, final Class propClass,
- final Class parentClass) {
- final double eps = factory.getEpsFor(propName);
- if (eps <= 1E-20) { return ZERO; }
- final EqualsTesterDouble res = new EqualsTesterDouble();
- res.setEps(eps);
- return res;
- }
- }
-
- public static class DurationTester extends BuilderEqualsTesterItem<EqualsTesterDuration> {
-
- private static final EqualsTesterDuration ZERO = new EqualsTesterDuration();
- static {
- ZERO.setEps(1E-20);
- }
-
- @Override
- protected EqualsTesterDuration build(final FactoryEqualsTester factory, final String propName,
- final Class propClass, final Class parentClass) {
- final double eps = factory.getEpsFor(propName);
- if (eps <= 1E-20) { return ZERO; }
- final EqualsTesterDuration res = new EqualsTesterDuration();
- res.setEps(eps);
- return res;
- }
- }
-
- public static class IntegerTester extends BuilderEqualsTesterItem<EqualsTesterInteger> {
-
- @Override
- protected EqualsTesterInteger build(final FactoryEqualsTester factory, final String propName,
- final Class propClass, final Class parentClass) {
- return ZERO_INT_TESTER;
- }
- }
-
- public static class LongTester extends BuilderEqualsTesterItem<EqualsTesterLong> {
-
- @Override
- protected EqualsTesterLong build(final FactoryEqualsTester factory, final String propName, final Class propClass,
- final Class parentClass) {
- return ZERO_LONG_TESTER;
- }
- }
-
- public static class PeriodTester extends BuilderEqualsTesterItem<EqualsTesterPeriod> {
-
- private static final EqualsTesterPeriod ZERO = new EqualsTesterPeriod();
- static {
- ZERO.setEps(1E-20);
- }
-
- @Override
- protected EqualsTesterPeriod build(final FactoryEqualsTester factory, final String propName, final Class propClass,
- final Class parentClass) {
- final double eps = factory.getEpsFor(propName);
- if (eps <= 1E-20) { return ZERO; }
- final EqualsTesterPeriod res = new EqualsTesterPeriod();
- res.setEps(eps);
- return res;
- }
- }
-
- protected abstract T build(FactoryEqualsTester factory, String propName, Class propClass, Class parentClass);
-
-}
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonGroup.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonGroup.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonGroup.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,20 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class ComparaisonGroup extends ComparaisonNode {
+
+ List<ComparaisonNode> fils = new ArrayList<ComparaisonNode>();
+
+ @Override
+ public List<ComparaisonNode> getFils() {
+ return fils;
+ }
+
+ @Override
+ public boolean isFeuille() {
+ return false;
+ }
+
+}
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonNode.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonNode.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonNode.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,15 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.List;
+
+public abstract class ComparaisonNode {
+ ComparaisonNode parent;
+ String print;
+ Object objetA;
+ Object objetB;
+
+ public abstract boolean isFeuille();
+
+ public abstract List<ComparaisonNode> getFils();
+
+}
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonNodeFinal.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonNodeFinal.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ComparaisonNodeFinal.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,21 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.Collections;
+import java.util.List;
+
+public class ComparaisonNodeFinal extends ComparaisonNode {
+
+ List listObjectA;
+ List listObjectB;
+
+ @Override
+ public List<ComparaisonNode> getFils() {
+ return Collections.emptyList();
+ }
+
+ @Override
+ public boolean isFeuille() {
+ return true;
+ }
+
+}
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertComparaisonConteneur.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertComparaisonConteneur.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertComparaisonConteneur.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,65 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.commons.collections.CollectionUtils;
+import org.fudaa.ctulu.CtuluAnalyze;
+import org.fudaa.dodico.crue.comparaison.ConvertCompare.CompareActionBuilder;
+import org.fudaa.dodico.crue.comparaison.config.ConfComparaison;
+import org.fudaa.dodico.crue.comparaison.config.ConfComparaisonConteneur;
+import org.fudaa.dodico.crue.comparaison.config.ConfCompare;
+import org.fudaa.dodico.crue.comparaison.tester.ResultatTest;
+
+public class ConvertComparaisonConteneur {
+
+ ConfComparaisonConteneur in;
+
+ public class CompareResult {
+ CtuluAnalyze analyze;
+ int nbObjectTested;
+ ResultatTest res;
+ String msg;
+ }
+
+ public List<CompareResult> launch(final Object a, final Object b) {
+ List<ConfComparaison> comparaisons = in.getComparaisons();
+ List<CompareResult> res = new ArrayList<CompareResult>(comparaisons.size());
+ for (ConfComparaison cmp : comparaisons) {
+ res.add(launch(cmp, a, b));
+ }
+ return res;
+ }
+
+ public CompareResult launch(final ConfComparaison cmp, final Object a, final Object b) {
+ final CompareResult res = new CompareResult();
+ res.msg = cmp.getNom();
+ res.analyze = new CtuluAnalyze();
+ final List<ConfCompare> compare = cmp.getCompare();
+ final CompareActionBuilder tester = new ConvertCompare().convert(compare.get(0), res.analyze);
+ if (tester == null) { return res; }
+ final ConvertSelectOn selector = new ConvertSelectOn();
+ selector.setA(a);
+ selector.setB(b);
+ selector.setSelect(cmp.getSelection());
+ List<ComparaisonNodeFinal> go = null;
+ try {
+ go = selector.go();
+ } catch (final Exception e) {
+ res.analyze.manageException(e);
+ }
+ if (CollectionUtils.isEmpty(go)) { return res; }
+ res.nbObjectTested = go.size();
+ // List<CtuluAnalyze> analyze = new ArrayList<CtuluAnalyze>(go.size());
+ final ResultatTest test = new ResultatTest(a, b, cmp.getNom());
+ // final CtuluAnalyze collector = new CtuluAnalyze();
+ res.analyze.setDesc(cmp.getNom());
+ res.res = test;
+ for (final ComparaisonNodeFinal toTest : go) {
+ tester.launch(toTest, test, res.analyze);
+ }
+
+ return res;
+
+ }
+}
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertCompare.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertCompare.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertCompare.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,126 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.List;
+
+import org.apache.commons.collections.CollectionUtils;
+import org.fudaa.ctulu.CtuluAnalyze;
+import org.fudaa.dodico.crue.comparaison.config.ConfCompare;
+import org.fudaa.dodico.crue.comparaison.config.ConfCompareListe;
+import org.fudaa.dodico.crue.comparaison.config.ConfCompareObject;
+import org.fudaa.dodico.crue.comparaison.tester.EqualsTester;
+import org.fudaa.dodico.crue.comparaison.tester.EqualsTesterBean;
+import org.fudaa.dodico.crue.comparaison.tester.EqualsTesterIsIncludeCollection;
+import org.fudaa.dodico.crue.comparaison.tester.FactoryEqualsTester;
+import org.fudaa.dodico.crue.comparaison.tester.ResultatTest;
+import org.fudaa.dodico.crue.comparaison.tester.TesterContext;
+
+public class ConvertCompare {
+
+ FactoryEqualsTester factory;
+
+ public interface CompareActionBuilder {
+ boolean launch(ComparaisonNodeFinal target, ResultatTest parent, CtuluAnalyze collector);
+ }
+
+ public class CompareActionOnList implements CompareActionBuilder {
+ final EqualsTester tester;
+
+ public CompareActionOnList(EqualsTester tester) {
+ super();
+ this.tester = tester;
+ }
+
+ public boolean launch(ComparaisonNodeFinal target, ResultatTest parent, CtuluAnalyze collector) {
+ TesterContext create = tester.getContextFactory().create();
+ create.setError(collector);
+ try {
+ return tester.isSame(target.listObjectA, target.listObjectB, parent, create);
+ } catch (Exception e) {
+ collector.manageException(e);
+ }
+ return false;
+
+ }
+ }
+
+ public class CompareActionOnObject implements CompareActionBuilder {
+ final EqualsTester tester;
+
+ public CompareActionOnObject(EqualsTester tester) {
+ this.tester = tester;
+ }
+
+ public boolean launch(ComparaisonNodeFinal target, ResultatTest parent, CtuluAnalyze collector) {
+
+ List a = target.listObjectA;
+ List b = target.listObjectB;
+ if (a == b) { return true; }
+ if (a == null) {
+ parent.getFils().add(new ResultatTest(a, b, "Liste de a est null"));
+ return false;
+ }
+ if (b == null) {
+ parent.getFils().add(new ResultatTest(a, b, "Liste de b est null"));
+ return false;
+ }
+ int size = a.size();
+ if (size != b.size()) {
+ parent.getFils().add(new ResultatTest(a, b, "Taile différente des listes " + size + " diff de " + b.size()));
+ return false;
+
+ }
+ boolean res = true;
+ try {
+ for (int i = 0; i < size; i++) {
+ TesterContext create = tester.getContextFactory().create();
+ create.setError(collector);
+ res = res & tester.isSame(a.get(i), b.get(i), parent, create);
+ }
+ } catch (Exception e) {
+ collector.manageException(e);
+ }
+ return res;
+
+ }
+ }
+
+ /**
+ * @return the factory
+ */
+ public FactoryEqualsTester getFactory() {
+ return factory;
+ }
+
+ /**
+ * @param factory the factory to set
+ */
+ public void setFactory(FactoryEqualsTester factory) {
+ this.factory = factory;
+ }
+
+ CompareActionBuilder convert(final ConfCompare in, final CtuluAnalyze analyze) {
+ if (in == null) { return null; }
+ final Class inClass = in.getClass();
+ if (ConfCompareObject.class.equals(inClass)) {
+ final ConfCompareObject inObject = (ConfCompareObject) in;
+ final EqualsTesterBean res = new EqualsTesterBean(factory);
+ res.getContextFactory().setMaxDeep(inObject.getDeep());
+ res.setPropToCompare(inObject.getAttributs());
+ if (CollectionUtils.isNotEmpty(inObject.getOptions())) {
+ analyze.addWarn("options.notManaged.forCompareObject");
+ }
+ return new CompareActionOnObject(res);
+ } else if (ConfCompareListe.class.equals(inClass)) {
+ final ConfCompareListe inObject = (ConfCompareListe) in;
+ final EqualsTesterIsIncludeCollection res = new EqualsTesterIsIncludeCollection(inObject.getAttribut(), inObject
+ .isBidirect());
+ if (CollectionUtils.isNotEmpty(inObject.getOptions())) {
+ analyze.addWarn("options.notManaged.forCompareListe");
+ }
+ return new CompareActionOnList(res);
+ }
+ analyze.addFatalError("compare.notRecognized", inClass);
+ return null;
+
+ }
+}
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOn.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOn.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOn.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,67 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.fudaa.dodico.crue.comparaison.config.ConfSelection;
+import org.fudaa.dodico.crue.comparaison.config.ConfSelectionItem;
+import org.fudaa.dodico.crue.comparaison.config.ConfSelectionItemMerge;
+
+public class ConvertSelectOn {
+
+ private Object a;
+ private Object b;
+
+ private ConfSelection select;
+
+ public Object getA() {
+ return a;
+ }
+
+ public void setA(Object a) {
+ this.a = a;
+ }
+
+ public Object getB() {
+ return b;
+ }
+
+ public void setB(Object b) {
+ this.b = b;
+ }
+
+ public ConfSelection getSelect() {
+ return select;
+ }
+
+ public void setSelect(ConfSelection select) {
+ this.select = select;
+ }
+
+ List<ComparaisonNodeFinal> go() throws Exception {
+ List<ComparaisonNodeFinal> init = new ArrayList<ComparaisonNodeFinal>();
+ ComparaisonNodeFinal node = new ComparaisonNodeFinal();
+ init.add(node);
+ node.listObjectA = new ArrayList();
+ node.listObjectA.add(a);
+ node.objetA = a;
+ node.listObjectB = new ArrayList();
+ node.listObjectB.add(b);
+ node.objetB = b;
+ List<ConfSelectionItem> selects = select.getItems();
+ ConvertSelectOnItemRequest request = new ConvertSelectOnItemRequest();
+ ConvertSelectOnItemMerge merge = new ConvertSelectOnItemMerge();
+ for (ConfSelectionItem selectionItem : selects) {
+ ConvertSelectOnItem doer;
+ if (ConfSelectionItemMerge.class.equals(selectionItem.getClass())) {
+ doer = merge;
+ } else {
+ doer = request;
+ }
+ init = doer.compute(init, selectionItem);
+
+ }
+ return init;
+ }
+
+}
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItem.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItem.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItem.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,11 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.List;
+
+import org.fudaa.dodico.crue.comparaison.config.ConfSelectionItem;
+
+public interface ConvertSelectOnItem {
+
+ List<ComparaisonNodeFinal> compute(final List<ComparaisonNodeFinal> in, final ConfSelectionItem requete) throws Exception;
+
+}
\ No newline at end of file
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItemMerge.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItemMerge.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItemMerge.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,75 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.apache.commons.beanutils.PropertyUtils;
+import org.fudaa.dodico.crue.comparaison.config.ConfSelectionItem;
+import org.fudaa.dodico.crue.comparaison.config.ConfSelectionItemMerge;
+
+public class ConvertSelectOnItemMerge implements ConvertSelectOnItem {
+
+ public List<ComparaisonNodeFinal> compute(final List<ComparaisonNodeFinal> in, final ConfSelectionItem requete)
+ throws Exception {
+ return computeOn(in, (ConfSelectionItemMerge) requete);
+ }
+
+ List<ComparaisonNodeFinal> computeOn(final List<ComparaisonNodeFinal> in, final ConfSelectionItemMerge requete)
+ throws Exception {
+ final List<ComparaisonNodeFinal> selectedBy = new ConvertSelectOnItemRequest().computeOn(in, requete.getRequest());
+ // final List<ComparaisonNodeFinal> res = new ArrayList<ComparaisonNodeFinal>();
+ for (final ComparaisonNodeFinal nodeFinal : selectedBy) {
+ computeOn(nodeFinal, requete);
+ }
+ return selectedBy;
+ }
+
+ private void computeOn(final ComparaisonNodeFinal in, final ConfSelectionItemMerge requete) throws Exception {
+ final List lA = in.listObjectA;
+ final List lB = in.listObjectB;
+
+ int min = Math.min(lA.size(), lB.size());
+
+ final List newA = new ArrayList(min);
+ final List newB = new ArrayList(min);
+ Map propA = getMap(lA, requete.getAttribut());
+ Map propB = getMap(lB, requete.getAttribut());
+ for (Iterator it = propA.entrySet().iterator(); it.hasNext();) {
+ Map.Entry entry = (Map.Entry) it.next();
+ Object inB = propB.get(entry.getKey());
+ if (inB != null) {
+ newA.add(entry.getValue());
+ newB.add(inB);
+ }
+ }
+ in.listObjectA = newA;
+ in.listObjectB = newB;
+
+ }
+
+ public static Map getMap(Collection obj, String prop) throws Exception {
+ Map res = new HashMap(obj.size());
+ for (Object object : obj) {
+ Object property = PropertyUtils.getProperty(object, prop);
+ res.put(property, object);
+ }
+ return res;
+
+ }
+
+ public static Set getSet(Collection obj, String prop) throws Exception {
+ Set res = new HashSet(obj.size());
+ for (Object object : obj) {
+ Object property = PropertyUtils.getProperty(object, prop);
+ res.add(property);
+ }
+ return res;
+
+ }
+}
Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItemRequest.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItemRequest.java (rev 0)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/ConvertSelectOnItemRequest.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -0,0 +1,55 @@
+package org.fudaa.dodico.crue.comparaison;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.commons.jxpath.JXPathContext;
+import org.fudaa.dodico.crue.comparaison.config.ConfSelectionItem;
+import org.fudaa.dodico.crue.comparaison.config.ConfSelectionItemRequete;
+
+public class ConvertSelectOnItemRequest implements ConvertSelectOnItem {
+
+ public List<ComparaisonNodeFinal> compute(final List<ComparaisonNodeFinal> in, final ConfSelectionItem requete)
+ throws Exception {
+ return computeOn(in, (ConfSelectionItemRequete) requete);
+ }
+
+ List<ComparaisonNodeFinal> computeOn(final List<ComparaisonNodeFinal> in, final ConfSelectionItemRequete requete) {
+ final List<ComparaisonNodeFinal> res = new ArrayList<ComparaisonNodeFinal>();
+ for (final ComparaisonNodeFinal nodeFinal : in) {
+ computeOn(nodeFinal, requete, res);
+ }
+ return res;
+ }
+
+ private void computeOn(final ComparaisonNodeFinal in, final ConfSelectionItemRequete requete,
+ final List<ComparaisonNodeFinal> res) {
+ final ComparaisonGroup gr = new ComparaisonGroup();
+ gr.parent = in.parent;
+ gr.objetA = in.objetA;
+ gr.objetB = in.objetB;
+ gr.print = in.print;
+ final List lA = in.listObjectA;
+ final List lB = in.listObjectB;
+ if (lA.size() != lB.size()) { throw new IllegalArgumentException("taille différente"); }
+ final int taille = lA.size();
+ for (int i = 0; i < taille; i++) {
+ final Object oa = lA.get(i);
+ final Object ob = lB.get(i);
+ JXPathContext xPath = JXPathContext.newContext(oa);
+ final List selectNodesA = xPath.selectNodes(requete.getRequest());
+ xPath = JXPathContext.newContext(ob);
+ final List selectNodesB = xPath.selectNodes(requete.getRequest());
+ final ComparaisonNodeFinal newCompar = new ComparaisonNodeFinal();
+ newCompar.listObjectA = selectNodesA;
+ newCompar.listObjectB = selectNodesB;
+ newCompar.parent = gr;
+ newCompar.objetA = oa;
+ newCompar.objetB = ob;
+ newCompar.print = requete.getPrint();
+ res.add(newCompar);
+ gr.fils.add(newCompar);
+ }
+
+ }
+}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTester.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTester.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTester.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,19 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-/**
- * @author denf01a
- * @creation 16 juin 2009
- * @version
- * @param <T> l'objet a tester
- */
-public interface EqualsTester<T> {
-
- /**
- * @param o1
- * @param o2
- * @param res FIXME
- * @return true si les 2 objets sont les mêmes
- */
- boolean isSame(T o1, T o2, ComparaisonResult res);
-
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArray.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArray.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArray.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,44 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-import java.lang.reflect.Array;
-import java.util.ArrayList;
-import java.util.Collection;
-
-/**
- * @author denf01a
- * @creation 22 juin 2009
- * @version
- */
-public class EqualsTesterArray extends AbstractEqualsTester<Object> {
-
- EqualsTesterCollection tester;
-
- /**
- * @param objTester le tester
- */
- public EqualsTesterArray(final FactoryEqualsTester factory, final String propName) {
- this.tester = new EqualsTesterCollection(factory, propName);
- }
-
- @Override
- public boolean isSameSafe(final Object o1, final Object o2, final ComparaisonResult res) {
- final int length = Array.getLength(o1);
- if (length != Array.getLength(o2)) {
- if (res != null) {
- res.addFils(new ComparaisonResult(length, Array.getLength(o2), "comparaison.collection.size"));
- }
- return false;
- }
- return tester.isSame(toCollection(o1, length), toCollection(o2, length), res);
-
- }
-
- private Collection toCollection(final Object array, final int length) {
- final Collection res = new ArrayList(length);
- for (int i = 0; i < length; i++) {
- res.add(Array.get(array, i));
- }
- return res;
- }
-
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayDouble.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayDouble.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayDouble.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,46 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-
-/**
- * @author denf01a
- * @creation 22 juin 2009
- * @version
- */
-public class EqualsTesterArrayDouble extends AbstractEqualsTester<double[]> {
-
- private final EqualsTesterDouble objTester;
-
- /**
- * @param objTester le tester
- */
- public EqualsTesterArrayDouble(final EqualsTesterDouble objTester) {
- super();
- this.objTester = objTester;
- }
-
- @Override
- public boolean isSameSafe(final double[] o1, final double[] o2, final ComparaisonResult res) {
- final int length = o1.length;
- if (length != o2.length) {
- if (res != null) {
- res.addFils(new ComparaisonResult(length, o2.length, "comparaison.collection.size"));
- }
- return false;
- }
- for (int idx = 0; idx < length; idx++) {
- if (!objTester.isSameDouble(o1[idx], o2[idx])) {
- // TODO améliorer le tout pour avoir plus de res.
- if (res != null) {
- res.addFils(new ComparaisonResult(o1[idx], o2[idx], "comparaison.collection.item", idx));
- }
- return false;
-
- }
-
- }
-
- return true;
-
- }
-
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayFloat.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayFloat.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayFloat.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,45 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-/**
- * @author denf01a
- * @creation 22 juin 2009
- * @version
- */
-public class EqualsTesterArrayFloat extends AbstractEqualsTester<float[]> {
-
- private final EqualsTesterDouble objTester;
-
- /**
- * @param objTester le tester
- */
- public EqualsTesterArrayFloat(final EqualsTesterDouble objTester) {
- super();
- this.objTester = objTester;
- }
-
- @Override
- public boolean isSameSafe(final float[] o1, final float[] o2, final ComparaisonResult res) {
- final int length = o1.length;
- if (length != o2.length) {
- if (res != null) {
- res.addFils(new ComparaisonResult(length, o2.length, "comparaison.collection.size"));
- }
- return false;
- }
- for (int idx = 0; idx < length; idx++) {
- if (!objTester.isSameDouble(o1[idx], o2[idx])) {
- // TODO améliorer le tout pour avoir plus de res.
- if (res != null) {
- res.addFils(new ComparaisonResult(o1[idx], o2[idx], "comparaison.collection.item", idx));
- }
- return false;
-
- }
-
- }
-
- return true;
-
- }
-
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayInteger.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayInteger.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayInteger.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,43 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-/**
- * @author denf01a
- * @creation 22 juin 2009
- * @version
- */
-public class EqualsTesterArrayInteger extends AbstractEqualsTester<int[]> {
-
- private final EqualsTesterInteger objTester;
-
- /**
- * @param objTester le tester
- */
- public EqualsTesterArrayInteger(final EqualsTesterInteger objTester) {
- super();
- this.objTester = objTester;
- }
-
- @Override
- public boolean isSameSafe(final int[] o1, final int[] o2, final ComparaisonResult res) {
- final int length = o1.length;
- if (length != o2.length) {
- if (res != null) {
- res.addFils(new ComparaisonResult(length, o2.length, "comparaison.collection.size"));
- }
- return false;
- }
- for (int idx = 0; idx < length; idx++) {
- final boolean isSame = objTester == null ? (o1[idx] == o2[idx]) : (objTester.isSameInteger(o1[idx], o2[idx]));
- if (!isSame) {
- // TODO améliorer le tout pour avoir plus de res.
- if (res != null) {
- res.addFils(new ComparaisonResult(o1[idx], o2[idx], "comparaison.collection.item", idx));
- }
- return false;
-
- }
-
- }
- return true;
- }
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayLong.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayLong.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterArrayLong.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,45 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-/**
- * @author denf01a
- * @creation 22 juin 2009
- * @version
- */
-public class EqualsTesterArrayLong extends AbstractEqualsTester<long[]> {
-
- private final EqualsTesterLong objTester;
-
- /**
- * @param objTester le tester
- */
- public EqualsTesterArrayLong(final EqualsTesterLong objTester) {
- super();
- this.objTester = objTester;
- }
-
- @Override
- public boolean isSameSafe(final long[] o1, final long[] o2, final ComparaisonResult res) {
- final int length = o1.length;
- if (length != o2.length) {
- if (res != null) {
- res.addFils(new ComparaisonResult(length, o2.length, "comparaison.collection.size"));
- }
- return false;
- }
- for (int idx = 0; idx < length; idx++) {
- final boolean isSame = objTester == null ? (o1[idx] == o2[idx]) : (objTester.isSameLong(o1[idx], o2[idx]));
- if (!isSame) {
- // TODO améliorer le tout pour avoir plus de res.
- if (res != null) {
- res.addFils(new ComparaisonResult(o1[idx], o2[idx], "comparaison.collection.item", idx));
- }
- return false;
-
- }
-
- }
- return true;
-
- }
-
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterBean.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterBean.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterBean.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,92 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-import java.beans.PropertyDescriptor;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.HashSet;
-
-import org.apache.commons.beanutils.PropertyUtils;
-import org.apache.commons.collections.CollectionUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * @author denf01a
- * @creation 22 juin 2009
- * @version
- */
-public class EqualsTesterBean extends AbstractEqualsTester<Object> {
-
- Collection<String> propToIgnore = new HashSet<String>(Arrays.asList("class"));
-
- Collection<String> propToCompare;
-
- public Collection<String> getPropToCompare() {
- return propToCompare;
- }
-
- public void setPropToCompare(final Collection<String> propToCompare) {
- this.propToCompare = propToCompare;
- }
-
- private final FactoryEqualsTester factory;
-
- /**
- * @param factory la factory
- */
- public EqualsTesterBean(FactoryEqualsTester factory) {
- super();
- this.factory = factory;
- }
-
- private final static Logger LOGGER = LoggerFactory.getLogger(EqualsTesterBean.class);
-
- @Override
- public boolean isSameSafe(final Object o1, final Object o2, final ComparaisonResult res) {
- final PropertyDescriptor[] propertyDescriptors = PropertyUtils.getPropertyDescriptors(o1);
- for (int i = 0; i < propertyDescriptors.length; i++) {
- final PropertyDescriptor descriptor = propertyDescriptors[i];
- final String name = descriptor.getName();
- if (propToIgnore != null && propToIgnore.contains(name)) {
- continue;
- }
- if (CollectionUtils.isEmpty(propToCompare) || propToCompare.contains(name)) {
- try {
- final Object a = PropertyUtils.getProperty(o1, name);
- final Object b = PropertyUtils.getProperty(o2, name);
- if (!compareProp(o1, res, name, a, b)) { return false; }
-
- } catch (final Exception e) {
- LOGGER.warn("error.comparaison", e);
- }
- }
- }
- return true;
- }
-
- private boolean compareProp(final Object o1, final ComparaisonResult res, final String name, final Object a,
- final Object b) {
- if (a == null) {
- if (b != null) {
- addDiff(res, a, b);
- return false;
- }
-
- } else {
- final EqualsTester tester = factory.buildTesterFor(o1.getClass(), a.getClass(), name);
- final boolean resB = tester.isSame(a, b, null);
- if (!resB) {
- addDiff(res, a, b);
- return false;
- }
- }
- return true;
- }
-
- private void addDiff(final ComparaisonResult res, final Object a, final Object b) {
- if (res != null) {
- res.addFils(new ComparaisonResult(a, b, "compare.property.diff"));
- }
- }
-
-}
Deleted: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterCollection.java
===================================================================
--- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterCollection.java 2009-07-02 22:20:25 UTC (rev 4900)
+++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/comparaison/EqualsTesterCollection.java 2009-07-05 22:35:48 UTC (rev 4901)
@@ -1,66 +0,0 @@
-package org.fudaa.dodico.crue.comparaison;
-
-import java.util.Collection;
-import java.util.Iterator;
-
-/**
- * @author denf01a
- * @creation 22 juin 2009
- * @version
- */
-public class EqualsTesterCollection extends AbstractEqualsTester<Collection> {
-
- private final FactoryEqualsTester factory;
- private final String propName;
-
- public EqualsTesterCollection(final FactoryEqualsTester factory, final String propName) {
- super();
- this.factory = factory;
- this.propName = propName;
- }
-
- @Override
- public boolean isSameSafe(final Collection o1, final Collection o2, final ComparaisonResult res) {
- if (o1.size() != o2.size()) {
- if (res != null) {
- res.addFils(new ComparaisonResult(o1.size(), o2.size(), "comparaison.collection.size"));
- }
- return false;
- }
- if (o1.size() == 0) { return true; }
- final Iterator it1 = o1.iterator();
- final Iterator it2 = o2.iterator();
- int idx = 0;
- EqualsTester tester = null;
- while (it1.hasNext()) {
- idx++;
- final Object obj1 = it1.next();
- final Object obj2 = it2.next();
- if (obj1 != obj2) {
- if (obj1 == null) {
- ...
[truncated message content] |