From: <had...@us...> - 2009-04-07 14:01:43
|
Revision: 4615 http://fudaa.svn.sourceforge.net/fudaa/?rev=4615&view=rev Author: hadouxad Date: 2009-04-07 13:34:12 +0000 (Tue, 07 Apr 2009) Log Message: ----------- * Cr?\195?\169ation du File Format Crue g?\195?\169n?\195?\169rique et de ses m?\195?\169thodes associ?\195?\169es qui g?\195?\168re la d?\195?\169finition du type/validateur xsd/structures ?\195?\160 utiliser: o g?\195?\168re le fichier xsd qui se charge de valider les fichiers xml o fourni les reader/writer (utilisation des g?\195?\169n?\195?\169riques pour couvrir tous les cas) o Fourni les structures dao au format de fichier o Fourni les m?\195?\169thodes read et write en demandant les bonnes structures m?\195?\169tier associes au format * Mise en place des file format: o ETU o DRSO o DPTI o DCSP o DPTG o DFRT o OPTG * Cr?\195?\169ation des test unitaires et mise en forme, ils constitueront un exemple a suivre pour les autres fichiers: o test lecture/ecriture ?\195?\160 reprendre pour les autres fichiers o les fichiers sont ?\195?\160 positionner dans le r?\195?\169pertoire ressource/fichierTest o Les test unitaires sont ?\195?\169crits et a prendre pour exemple pour: + DRSO + ETU + DCSP + DFRT + DPTI + OPTG (reste DPTG ?\195?\160 faire) * Le format DRSO est valide et op?\195?\169rationnel (mail envoy?\195?\169 ?\195?\160 Mr Balayn) Modified Paths: -------------- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/dao/validatorXml/ValidatorXml.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/dao/validatorXml/valideDRSO.xsd trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/Crue10reader.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/Crue10writer.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/CrueFileFormat.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/EtuFileFormat.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/AppCrueTest.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/TestCrueDCSPFile.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/TestCrueDFRTFile.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/TestCrueDPTGFile.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/TestCrueDPTIFile.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/TestCrueDRSOFile.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/TestCrueETU.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/TestCrueInterface.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/TestCrueOPTGFile.java trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.dclm.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.dcsp.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.dlhy.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.dptg.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.dpti.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.drso.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.optg.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.pcal.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.pnum.xml trunk/soft/fudaa-crue/fudaa/src/main/java/org/fudaa/fudaa/test/AppCrueTest.java Added Paths: ----------- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DCSPFileFormat.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DFRTFileFormat.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DPTGFileFormat.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DPTIFileFormat.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DRSOFileFormat.java trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/OPTGFileFormat.java trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/RemplissageData.java trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/ trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Etude.etu.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.dcsp.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.dfrt.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.dlhy.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.dptg.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.dpti.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.drso.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.ocal.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.optg.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.opti.xml trunk/soft/fudaa-crue/dodico/src/test/resources/fichierTest/Modele3.ores.xml trunk/soft/fudaa-crue/dodico/src/test/resources/org/ trunk/soft/fudaa-crue/dodico/src/test/resources/org/fudaa/ trunk/soft/fudaa-crue/dodico/src/test/resources/org/fudaa/dodico/ trunk/soft/fudaa-crue/dodico/src/test/resources/org/fudaa/dodico/crue/ trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.ocal.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.opti.xml trunk/soft/fudaa-crue/fudaa/Fichiers_donnees_Crue/Modele 3/crue 10/Modele3.ores.xml Removed Paths: ------------- trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/fichierTest/ Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/dao/validatorXml/ValidatorXml.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/dao/validatorXml/ValidatorXml.java 2009-04-06 21:50:20 UTC (rev 4614) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/dao/validatorXml/ValidatorXml.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -26,32 +26,15 @@ static final String W3C_XML_SCHEMA = "http://www.w3.org/2001/XMLSchema"; static final String JAXP_SCHEMA_SOURCE = "http://java.sun.com/xml/jaxp/properties/schemaSource"; static boolean isValid = true; - /** - * ref vers le fichier xsd DFRT. - */ - public static final String xsdDFRT = "valideDFRT.xsd"; - public static final String xsdDRSO = "valideDRSO.xsd"; - public static final String xsdDPTI = "valideDPTI.xsd"; - public static final String xsdDCSP = "valideDCSP.xsd"; - public static final String xsdOPTG = "valideOPTG.xsd"; - public static final String xsdDPTG = "valideDPTG.xsd"; - public static final String xsdETU = "valideETU.xsd"; - public static final String xsdTEST = "valideTest.xsd"; + + + /** * entete xml a mettre devant chaque fichier. */ public static final String enteteXml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; - /** - * valide fichier dfrt - * - * @param xmlFile - * @return - */ - public static boolean validDFRT(final String xmlFile, final CtuluAnalyze listeMessageError) { - return validXMLWithDOM(xmlFile, xsdDFRT, listeMessageError); - } /** * Initialise le validator avec els infos et le bon fichier xsd Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/dao/validatorXml/valideDRSO.xsd =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/dao/validatorXml/valideDRSO.xsd 2009-04-06 21:50:20 UTC (rev 4614) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/dao/validatorXml/valideDRSO.xsd 2009-04-07 13:34:12 UTC (rev 4615) @@ -47,7 +47,7 @@ <xs:element name="NdAm" type="Reference"/> <xs:element name="NdAv" type="Reference"/> <xs:choice minOccurs="1" maxOccurs="unbounded"> - <xs:element name="Branche-Sections" type="SectionsBranches"/> + <xs:element name="Sections" type="SectionsBranches"/> </xs:choice> </xs:sequence> <xs:attribute name="Nom" type="xs:string"/> Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/Crue10reader.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/Crue10reader.java 2009-04-06 21:50:20 UTC (rev 4614) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/Crue10reader.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -15,6 +15,13 @@ import org.fudaa.dodico.crue.dao.CrueDaoPersistOPTG; import org.fudaa.dodico.crue.dao.CrueDaoPersit; import org.fudaa.dodico.crue.dao.validatorXml.ValidatorXml; +import org.fudaa.dodico.crue.inout.fileformat.DCSPFileFormat; +import org.fudaa.dodico.crue.inout.fileformat.DFRTFileFormat; +import org.fudaa.dodico.crue.inout.fileformat.DPTGFileFormat; +import org.fudaa.dodico.crue.inout.fileformat.DPTIFileFormat; +import org.fudaa.dodico.crue.inout.fileformat.DRSOFileFormat; +import org.fudaa.dodico.crue.inout.fileformat.EtuFileFormat; +import org.fudaa.dodico.crue.inout.fileformat.OPTGFileFormat; import org.fudaa.dodico.crue.metier.EMHproject; import org.fudaa.dodico.crue.metier.emh.CrueData; import org.fudaa.dodico.crue.metier.emh.DonFrt; @@ -33,15 +40,15 @@ * * @author Adrien Hadoux */ - protected static class ReaderWithExtra<T> { + public static class ReaderWithExtra<T> { CrueDaoPersit<T> data; CtuluAnalyze listeMessageError; - Object dataLinked; + Object[] dataLinked; - public ReaderWithExtra(final CrueDaoPersit<T> data, final Object dataLinked, final CtuluAnalyze listeMessageError) { - this.data = data; - this.listeMessageError = listeMessageError; - this.dataLinked = dataLinked; + public ReaderWithExtra( final CtuluAnalyze analyzer) { + + this.listeMessageError = analyzer; + } /** @@ -51,7 +58,7 @@ * @param validatorXSDfile * @return */ - public T read(final File fichier, final String validatorXSDfile) { + public T read(final CrueDaoPersit<T> data, final File fichier, final String validatorXSDfile,final Object... dataLinked) { listeMessageError.setDesc(CrueResource.getS(" Analyse du Fichier " + fichier.getName())); @@ -76,9 +83,8 @@ * que des references vers les objets d\xE9crits dans DRSO. */ public static EMHproject readETUFile(final File fichierETU, final CtuluAnalyze listeMessageError) { - return (new ReaderWithExtra<EMHproject>(new CrueDaoPersistETU(), null, listeMessageError)).read(fichierETU, - ValidatorXml.xsdETU); - } + return EtuFileFormat.getInstance().readData(fichierETU, listeMessageError, null); + } /** * lit le fichier xml DRSO DRSO - Fichier des donn\xE9es du r\xE9seau (xml) et retourne les donn\xE9es m\xE9tier correspondantes. @@ -87,11 +93,7 @@ * @return */ public static CrueData readDRSOFile(final File fichierDRSO, final CtuluAnalyze listeMessageError) { - - // -- remplissage des donnees m\xE9tier a partir des persistantes--// - return (new ReaderWithExtra<CrueData>(new CrueDaoPersistDRSO(), null, listeMessageError)).read(fichierDRSO, - ValidatorXml.xsdDRSO); - + return DRSOFileFormat.getInstance().readData(fichierDRSO, listeMessageError, null); } /** @@ -100,8 +102,8 @@ * contient que des references vers les objets d\xE9crits dans DRSO. */ public static void readDPTIFile(final File fichierDPTI, final CrueData dataDRSO, final CtuluAnalyze listeMessageError) { - (new ReaderWithExtra<CrueData>(new CrueDaoPersistDPTI(), dataDRSO, listeMessageError)).read(fichierDPTI, - ValidatorXml.xsdDPTI); + (new ReaderWithExtra<CrueData>(listeMessageError)).read(new CrueDaoPersistDPTI(),fichierDPTI, + DPTIFileFormat.xsdDPTI,dataDRSO); } /** @@ -112,8 +114,8 @@ public static void readDPTGFile(final File fichierDPTG, final CrueData dataDRSOetDFRT, final CtuluAnalyze listeMessageError) { - (new ReaderWithExtra<CrueData>(new CrueDaoPersistDPTG(), dataDRSOetDFRT, listeMessageError)).read(fichierDPTG, - ValidatorXml.xsdDPTG); + (new ReaderWithExtra<CrueData>( listeMessageError)).read(new CrueDaoPersistDPTG(), fichierDPTG, + DPTGFileFormat.xsdDPTG,dataDRSOetDFRT); } /** @@ -122,8 +124,8 @@ * DSCP ne contient que des references vers les objets d\xE9crits dans DRSO. */ public static void readDSCPFile(final File fichierDSCP, final List<EMH> dataDRSO, final CtuluAnalyze listeMessageError) { - (new ReaderWithExtra<List<EMH>>(new CrueDaoPersistDCSP(), dataDRSO, listeMessageError)).read(fichierDSCP, - ValidatorXml.xsdDCSP); + (new ReaderWithExtra<List<EMH>>(listeMessageError)).read(new CrueDaoPersistDCSP(),fichierDSCP, + DCSPFileFormat.xsdDCSP,dataDRSO); } /** @@ -133,8 +135,8 @@ * @return */ public static List<DonFrt> readDFRTFile(final File fichierDFRT, final CtuluAnalyze listeMessageError) { - return (new ReaderWithExtra<List<DonFrt>>(new CrueDaoPersistDFRT(), null, listeMessageError)).read(fichierDFRT, - ValidatorXml.xsdDFRT); + return (new ReaderWithExtra<List<DonFrt>>( listeMessageError)).read(new CrueDaoPersistDFRT(),fichierDFRT, + DFRTFileFormat.xsdDFRT,null); } @@ -146,8 +148,8 @@ * @return */ public static DonPrtReseau readOPTGFile(final File fichierOPTG, final CtuluAnalyze listeMessageError) { - return (new ReaderWithExtra<DonPrtReseau>(new CrueDaoPersistOPTG(), null, listeMessageError)).read(fichierOPTG, - ValidatorXml.xsdOPTG); + return (new ReaderWithExtra<DonPrtReseau>( listeMessageError)).read(new CrueDaoPersistOPTG(),fichierOPTG, + OPTGFileFormat.xsdOPTG,null); } Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/Crue10writer.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/Crue10writer.java 2009-04-06 21:50:20 UTC (rev 4614) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/Crue10writer.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -25,23 +25,23 @@ */ public class Crue10writer { - protected static class WriterWithExtra<T> { + public static class WriterWithExtra<T> { - CrueDaoPersit<T> data; - T dataMetier; + CtuluAnalyze analyzer; + - public WriterWithExtra(final CrueDaoPersit<T> data, final T dataMetier) { - this.data = data; - this.dataMetier = dataMetier; + public WriterWithExtra( final CtuluAnalyze analyzer ) { + this.analyzer = analyzer; + } - public boolean write(final CtuluAnalyze listeMessageError, final File f) { + public boolean write(final CrueDaoPersit<T> data,final T dataMetier, final File f) { - listeMessageError.setDesc(CrueResource.getS(" Analyse du Fichier " + f.getName())); + analyzer.setDesc(CrueResource.getS(" Analyse du Fichier " + f.getName())); - data.fillInfosWith(dataMetier, listeMessageError); + data.fillInfosWith(dataMetier, analyzer); final CrueDaoParsing<T> parser = new CrueDaoParsing<T>(data); - return parser.persistData(f, listeMessageError); + return parser.persistData(f, analyzer); } } @@ -51,7 +51,7 @@ * m\xE9tiers fournies. */ public static boolean writeDRSOFile(final CrueData data, final File fichierDRSO, final CtuluAnalyze listeMessageError) { - return (new WriterWithExtra<CrueData>(new CrueDaoPersistDRSO(), data)).write(listeMessageError, fichierDRSO); + return (new WriterWithExtra<CrueData>(listeMessageError)).write(new CrueDaoPersistDRSO(),data, fichierDRSO); } /** @@ -60,7 +60,7 @@ */ public static boolean writeDPTIFile(final CrueData data, final File fichierDPTI, final CtuluAnalyze listeMessageError) { - return (new WriterWithExtra<CrueData>(new CrueDaoPersistDPTI(), data)).write(listeMessageError, fichierDPTI); + return (new WriterWithExtra<CrueData>(listeMessageError )).write(new CrueDaoPersistDPTI(), data, fichierDPTI); } /** @@ -68,7 +68,7 @@ * branches a partir des donn\xE9es m\xE9tiers fournies. */ public static boolean writeDSCPFile(final List<EMH> data, final File fichierDSCP, final CtuluAnalyze listeMessageError) { - return (new WriterWithExtra<List<EMH>>(new CrueDaoPersistDCSP(), data)).write(listeMessageError, fichierDSCP); + return (new WriterWithExtra<List<EMH>>(listeMessageError )).write(new CrueDaoPersistDCSP(), data, fichierDSCP); } /** @@ -77,7 +77,7 @@ */ public static boolean writeDFRTFile(final List<DonFrt> data, final File fichierDFRT, final CtuluAnalyze listeMessageError) { - return (new WriterWithExtra<List<DonFrt>>(new CrueDaoPersistDFRT(), data)).write(listeMessageError, fichierDFRT); + return (new WriterWithExtra<List<DonFrt>>(listeMessageError )).write(new CrueDaoPersistDFRT(), data, fichierDFRT); } /** @@ -85,7 +85,7 @@ * partir des donn\xE9es m\xE9tiers fournies. */ public static boolean writeDPTGFile(final CrueData data, final File fichierDPTG, final CtuluAnalyze listeMessageError) { - return (new WriterWithExtra<CrueData>(new CrueDaoPersistDPTG(), data)).write(listeMessageError, fichierDPTG); + return (new WriterWithExtra<CrueData>(listeMessageError )).write(new CrueDaoPersistDPTG(), data, fichierDPTG); } /** @@ -98,7 +98,7 @@ public static boolean writeOPTGFile(final DonPrtReseau data, final File fichierOPTG, final CtuluAnalyze listeMessageError) { final CrueDaoPersistOPTG dataPersistante = new CrueDaoPersistOPTG(); - return (new WriterWithExtra<DonPrtReseau>(new CrueDaoPersistOPTG(), data)).write(listeMessageError, fichierOPTG); + return (new WriterWithExtra<DonPrtReseau>(listeMessageError )).write(new CrueDaoPersistOPTG(), data, fichierOPTG); } /** Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/CrueFileFormat.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/CrueFileFormat.java 2009-04-06 21:50:20 UTC (rev 4614) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/CrueFileFormat.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -3,12 +3,16 @@ import java.io.File; import java.util.Map; +import org.fudaa.ctulu.CtuluAnalyze; import org.fudaa.ctulu.CtuluIOOperationSynthese; import org.fudaa.ctulu.ProgressionInterface; import org.fudaa.ctulu.fileformat.FileFormatUnique; import org.fudaa.ctulu.fileformat.FileReadOperationAbstract; import org.fudaa.ctulu.fileformat.FileWriteOperationAbstract; import org.fudaa.dodico.commun.DodicoLib; +import org.fudaa.dodico.crue.dao.CrueDaoPersit; +import org.fudaa.dodico.crue.inout.Crue10reader.ReaderWithExtra; +import org.fudaa.dodico.crue.inout.Crue10writer.WriterWithExtra; import org.fudaa.dodico.mesure.EvolutionFileFormatVersion; /** @@ -16,63 +20,98 @@ * fichier donn\xE9. Contient une m\xE9thode statique tr\xE8s pratique qui permet de retourner automatiquement le bon FileFormat * en fonction du type renvoy\xE9. * + * T correspond \xE0 la structure m\xE9tier associ\xE9e au format du fichier + * * @author Adrien Hadoux */ -public abstract class CrueFileFormat extends FileFormatUnique implements EvolutionFileFormatVersion { +public abstract class CrueFileFormat<T> extends FileFormatUnique { - /** - * Le type du fichier (cf cruedaoCommomFactory.) - */ - String type; + /** + * Le type du fichier (cf cruedaoCommomFactory.) + */ + String type; - protected CrueFileFormat(final String type) { - super(1); - extensions_ = getExtensions(); - id_ = "Crue"; - nom_ = "Crue"; - description_ = DodicoLib.getS("Fichier Crue"); - // software_ = FileFormatSoftware.TELEMAC_IS; - this.type = type; + protected CrueFileFormat(final String type) { + super(1); + extensions_ = getExtensions(); + id_ = "Crue"; + nom_ = "Crue"; + description_ = DodicoLib.getS("Fichier Crue"); + // software_ = FileFormatSoftware.TELEMAC_IS; + this.type = type; - } + } - /** - * retourne les extensions acceptables par le fichier - */ - @Override - public abstract String[] getExtensions(); + /** + * retourne les extensions acceptables par le fichier + */ + @Override + public abstract String[] getExtensions(); - /** - * retourne l'infos : est du type crue 10 sinon 9. - * - * @return - */ - public abstract boolean isCrue10(); + /** + * retourne l'infos : est du type crue 10 sinon 9. + * + * @return + */ + public abstract boolean isCrue10(); - /** - * retourne le validator xsd. - */ - public abstract String getXsdValidator(); + /** + * retourne le validator xsd. + */ + public abstract String getXsdValidator(); - /** - * @return true si le fichier demand\xE9 s'auto-suffit. Si il a besoin d'autre fichiers (ref ou d\xE9pendances) retourne - * false. - */ - public abstract boolean isIndependant(); + /** + * @return true si le fichier demand\xE9 s'auto-suffit. Si il a besoin d'autre fichiers (ref ou d\xE9pendances) retourne + * false. + */ + public abstract boolean isIndependant(); - public FileReadOperationAbstract createReader() { - // return new ScopeReaderSorT(this); - return null; - } + /** + * Obtenir le reader associ\xE9 au format DRSO + * @return + */ + protected ReaderWithExtra<T> getReader( CtuluAnalyze analyzer ){ - public FileWriteOperationAbstract createWriter() { - // return new ScopeWriterSorT(this); - return null; - } + return new ReaderWithExtra<T>(analyzer); + } - public CtuluIOOperationSynthese readEvolutions(final File _f, final ProgressionInterface _prog, final Map _options) { - // TODO Auto-generated method stub - return null; - } + /** + * MEthode qui permet d'\xE9crire les datas dans le fichier f sp\xE9cifi\xE9. + * @param data + * @param f + * @return + */ + public abstract boolean writeData(T data, File f,CtuluAnalyze analyzer); + /** + * Lit les donn\xE9es dans le fichier f avec les donn\xE9es li\xE9es. + * @param dataLinked + * @return + */ + public abstract T readData(final File f,CtuluAnalyze analyzer,final Object... dataLinked); + /** + * Obtenir le wtriter associ\xE9. + * @param data + * @param dataMetier + * @return + */ + protected WriterWithExtra<T> getWriter(final CtuluAnalyze analyzer){ + return new WriterWithExtra<T>(analyzer); + } + + + + + public FileReadOperationAbstract createReader() { + // return new ScopeReaderSorT(this); + return null; + } + + public FileWriteOperationAbstract createWriter() { + // return new ScopeWriterSorT(this); + return null; + } + + + } Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DCSPFileFormat.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DCSPFileFormat.java (rev 0) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DCSPFileFormat.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -0,0 +1,67 @@ +package org.fudaa.dodico.crue.inout.fileformat; + +import java.io.File; +import java.util.List; + +import org.fudaa.ctulu.CtuluAnalyze; +import org.fudaa.dodico.crue.dao.CrueDaoConverterCommon; +import org.fudaa.dodico.crue.dao.CrueDaoPersistDCSP; +import org.fudaa.dodico.crue.metier.emh.EMH; + + +/** + * File format pour DPTI. + * Le parametre template correspond \xE0 la donn\xE9es m\xE9tier attendue. + * @author Adrien Hadoux + * + */ +public class DCSPFileFormat extends CrueFileFormat<List<EMH>> { + + public static final String xsdDCSP = "valideDCSP.xsd"; + private static DCSPFileFormat INSTANCE; + + + + protected DCSPFileFormat(String type) { + super(type); + } + + public static CrueFileFormat<List<EMH>> getInstance() { + if (INSTANCE == null) INSTANCE = new DCSPFileFormat(CrueDaoConverterCommon.DCSP); + return INSTANCE; + } + + @Override + public String[] getExtensions() { + return new String[] { "dcsp", "dcsp.xml" }; + } + + @Override + public String getXsdValidator() { + return xsdDCSP; + } + + @Override + public boolean isCrue10() { + return true; + } + + @Override + public boolean isIndependant() { + return false; + } + + @Override + public List<EMH> readData(File f,CtuluAnalyze analyzer, Object... dataLinked) { + return getReader(analyzer).read(new CrueDaoPersistDCSP(), f, getXsdValidator(), dataLinked); + + } + + @Override + public boolean writeData(List<EMH> data, File f,CtuluAnalyze analyzer) { + return getWriter(analyzer).write(new CrueDaoPersistDCSP(), data, f); + } + + + +} Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DFRTFileFormat.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DFRTFileFormat.java (rev 0) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DFRTFileFormat.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -0,0 +1,65 @@ +package org.fudaa.dodico.crue.inout.fileformat; + +import java.io.File; +import java.util.List; + +import org.fudaa.ctulu.CtuluAnalyze; +import org.fudaa.dodico.crue.dao.CrueDaoConverterCommon; +import org.fudaa.dodico.crue.dao.CrueDaoPersistDFRT; +import org.fudaa.dodico.crue.metier.emh.DonFrt; + +/** + * Format de fichier DFRT. + * @author Adrien Hadoux + * + */ +public class DFRTFileFormat extends CrueFileFormat<List<DonFrt>> { + + public static final String xsdDFRT = "valideDFRT.xsd"; + private static DFRTFileFormat INSTANCE; + + + + protected DFRTFileFormat(String type) { + super(type); + } + + public static CrueFileFormat<List<DonFrt>> getInstance() { + if (INSTANCE == null) INSTANCE = new DFRTFileFormat(CrueDaoConverterCommon.DFRT); + return INSTANCE; + } + + @Override + public String[] getExtensions() { + return new String[] { "dfrt", "dfrt.xml" }; + } + + @Override + public String getXsdValidator() { + return xsdDFRT; + } + + @Override + public boolean isCrue10() { + return true; + } + + @Override + public boolean isIndependant() { + return false; + } + + @Override + public List<DonFrt> readData(File f,CtuluAnalyze analyzer, Object... dataLinked) { + return getReader(analyzer).read(new CrueDaoPersistDFRT(), f, getXsdValidator(), dataLinked); + + } + + @Override + public boolean writeData(List<DonFrt> data, File f,CtuluAnalyze analyzer) { + return getWriter(analyzer).write(new CrueDaoPersistDFRT(), data, f); + } + + + +} Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DPTGFileFormat.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DPTGFileFormat.java (rev 0) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DPTGFileFormat.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -0,0 +1,65 @@ +package org.fudaa.dodico.crue.inout.fileformat; + +import java.io.File; +import org.fudaa.ctulu.CtuluAnalyze; +import org.fudaa.dodico.crue.dao.CrueDaoConverterCommon; +import org.fudaa.dodico.crue.dao.CrueDaoPersistDPTG; +import org.fudaa.dodico.crue.metier.emh.CrueData; + + +/** + * Format DPTG. + * @author Adrien Hadoux + * + */ +public class DPTGFileFormat extends CrueFileFormat<CrueData> { + + + public static final String xsdDPTG = "valideDPTG.xsd"; + private static DPTGFileFormat INSTANCE; + + + + protected DPTGFileFormat(String type) { + super(type); + } + + public static CrueFileFormat<CrueData> getInstance() { + if (INSTANCE == null) INSTANCE = new DPTGFileFormat(CrueDaoConverterCommon.DCSP); + return INSTANCE; + } + + @Override + public String[] getExtensions() { + return new String[] { "dptg", "dptg.xml" }; + } + + @Override + public String getXsdValidator() { + return xsdDPTG; + } + + @Override + public boolean isCrue10() { + return true; + } + + @Override + public boolean isIndependant() { + return false; + } + + @Override + public CrueData readData(File f,CtuluAnalyze analyzer, Object... dataLinked) { + return getReader(analyzer).read(new CrueDaoPersistDPTG(), f, getXsdValidator(), dataLinked); + + } + + @Override + public boolean writeData(CrueData data, File f,CtuluAnalyze analyzer) { + return getWriter(analyzer).write(new CrueDaoPersistDPTG(), data, f); + } + + + +} \ No newline at end of file Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DPTIFileFormat.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DPTIFileFormat.java (rev 0) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DPTIFileFormat.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -0,0 +1,67 @@ +package org.fudaa.dodico.crue.inout.fileformat; + +import java.io.File; + +import org.fudaa.ctulu.CtuluAnalyze; +import org.fudaa.dodico.crue.dao.CrueDaoConverterCommon; +import org.fudaa.dodico.crue.dao.CrueDaoPersistDPTI; +import org.fudaa.dodico.crue.metier.emh.CrueData; + + +/** + * File format pour DPTI. + * Le parametre template correspond \xE0 la donn\xE9es m\xE9tier attendue. + * @author Adrien Hadoux + * + */ + +public class DPTIFileFormat extends CrueFileFormat<CrueData> { + + public static final String xsdDPTI = "valideDPTI.xsd"; + private static DPTIFileFormat INSTANCE; + + + + protected DPTIFileFormat(String type) { + super(type); + } + + public static CrueFileFormat<CrueData> getInstance() { + if (INSTANCE == null) INSTANCE = new DPTIFileFormat(CrueDaoConverterCommon.DPTI); + return INSTANCE; + } + + @Override + public String[] getExtensions() { + return new String[] { "dpti", "dpti.xml" }; + } + + @Override + public String getXsdValidator() { + return xsdDPTI; + } + + @Override + public boolean isCrue10() { + return true; + } + + @Override + public boolean isIndependant() { + return false; + } + + @Override + public CrueData readData(File f,CtuluAnalyze analyzer, Object... dataLinked) { + return getReader(analyzer).read(new CrueDaoPersistDPTI(), f, getXsdValidator(), dataLinked); + + } + + @Override + public boolean writeData(CrueData data, File f,CtuluAnalyze analyzer) { + return getWriter(analyzer).write(new CrueDaoPersistDPTI(), data, f); + } + + + +} \ No newline at end of file Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DRSOFileFormat.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DRSOFileFormat.java (rev 0) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/DRSOFileFormat.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -0,0 +1,66 @@ +package org.fudaa.dodico.crue.inout.fileformat; + +import java.io.File; + +import org.fudaa.ctulu.CtuluAnalyze; +import org.fudaa.dodico.crue.dao.CrueDaoConverterCommon; +import org.fudaa.dodico.crue.dao.CrueDaoPersistDRSO; +import org.fudaa.dodico.crue.metier.EMHproject; +import org.fudaa.dodico.crue.metier.emh.CrueData; + +/** + * File format pour DRSO. + * Le parametre template correspond \xE0 la donn\xE9es m\xE9tier attendue. + * @author Adrien Hadoux + * + */ +public class DRSOFileFormat extends CrueFileFormat<CrueData> { + + public static final String xsdDRSO = "valideDRSO.xsd"; + private static DRSOFileFormat INSTANCE; + + + + protected DRSOFileFormat(String type) { + super(type); + } + + public static CrueFileFormat<CrueData> getInstance() { + if (INSTANCE == null) INSTANCE = new DRSOFileFormat(CrueDaoConverterCommon.DRSO); + return INSTANCE; + } + + @Override + public String[] getExtensions() { + return new String[] { "drso", "drso.xml" }; + } + + @Override + public String getXsdValidator() { + return xsdDRSO; + } + + @Override + public boolean isCrue10() { + return true; + } + + @Override + public boolean isIndependant() { + return true; + } + + @Override + public CrueData readData(File f,CtuluAnalyze analyzer, Object... dataLinked) { + return getReader(analyzer).read(new CrueDaoPersistDRSO(), f, getXsdValidator(), dataLinked); + + } + + @Override + public boolean writeData(CrueData data, File f,CtuluAnalyze analyzer) { + return getWriter(analyzer).write(new CrueDaoPersistDRSO(), data, f); + } + + + +} Modified: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/EtuFileFormat.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/EtuFileFormat.java 2009-04-06 21:50:20 UTC (rev 4614) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/EtuFileFormat.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -1,7 +1,11 @@ package org.fudaa.dodico.crue.inout.fileformat; +import java.io.File; + +import org.fudaa.ctulu.CtuluAnalyze; import org.fudaa.dodico.crue.dao.CrueDaoConverterCommon; import org.fudaa.dodico.crue.dao.validatorXml.ValidatorXml; +import org.fudaa.dodico.crue.metier.EMHproject; /** * File format du fichier ETU. Permet de distinguer ce fichier des autres. Utilis\xE9 dans le crue superviseur pour le @@ -9,8 +13,9 @@ * * @author Adrien Hadoux */ -public class EtuFileFormat extends CrueFileFormat { +public class EtuFileFormat extends CrueFileFormat<EMHproject> { + public static final String xsdETU = "valideETU.xsd"; private static EtuFileFormat INSTANCE; private EtuFileFormat() { @@ -24,7 +29,7 @@ @Override public String getXsdValidator() { - return ValidatorXml.xsdETU; + return xsdETU; } @Override @@ -32,7 +37,7 @@ return true; } - public static CrueFileFormat getInstance() { + public static CrueFileFormat<EMHproject> getInstance() { if (INSTANCE == null) INSTANCE = new EtuFileFormat(); return INSTANCE; } @@ -42,4 +47,16 @@ return true; } +@Override +public EMHproject readData(File f, CtuluAnalyze analyzer, Object... dataLinked) { + // TODO Auto-generated method stub + return null; } + +@Override +public boolean writeData(EMHproject data, File f, CtuluAnalyze analyzer) { + // TODO Auto-generated method stub + return false; +} + +} Added: trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/OPTGFileFormat.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/OPTGFileFormat.java (rev 0) +++ trunk/soft/fudaa-crue/dodico/src/main/java/org/fudaa/dodico/crue/inout/fileformat/OPTGFileFormat.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -0,0 +1,62 @@ +package org.fudaa.dodico.crue.inout.fileformat; + +import java.io.File; +import org.fudaa.ctulu.CtuluAnalyze; +import org.fudaa.dodico.crue.dao.CrueDaoConverterCommon; +import org.fudaa.dodico.crue.dao.CrueDaoPersistOPTG; +import org.fudaa.dodico.crue.metier.emh.DonPrtReseau; +/** + * File format optg + * @author Adrien Hadoux + * + */ +public class OPTGFileFormat extends CrueFileFormat<DonPrtReseau> { + + public static final String xsdOPTG = "valideOPTG.xsd"; + private static OPTGFileFormat INSTANCE; + + + + protected OPTGFileFormat(String type) { + super(type); + } + + public static CrueFileFormat<DonPrtReseau> getInstance() { + if (INSTANCE == null) INSTANCE = new OPTGFileFormat(CrueDaoConverterCommon.DPTI); + return INSTANCE; + } + + @Override + public String[] getExtensions() { + return new String[] { "optg", "optg.xml" }; + } + + @Override + public String getXsdValidator() { + return xsdOPTG; + } + + @Override + public boolean isCrue10() { + return true; + } + + @Override + public boolean isIndependant() { + return true; + } + + @Override + public DonPrtReseau readData(File f,CtuluAnalyze analyzer, Object... dataLinked) { + return getReader(analyzer).read(new CrueDaoPersistOPTG(), f, getXsdValidator(), dataLinked); + + } + + @Override + public boolean writeData(DonPrtReseau data, File f,CtuluAnalyze analyzer) { + return getWriter(analyzer).write(new CrueDaoPersistOPTG(), data, f); + } + + + +} Modified: trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/AppCrueTest.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/AppCrueTest.java 2009-04-06 21:50:20 UTC (rev 4614) +++ trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/AppCrueTest.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -28,7 +28,7 @@ * Chemin d'acc\xE8s au fichier ETU pour les test unitaires le concernant. */ //public static String pathFichierETU = pathRepertoireTest+File.separator+"Etude.etu.xml"; - public static String pathFichierETU = AppCrueTest.class.getResource("fichierTest/Etude.etu.xml").toString(); + /** * Specifie le repertoire de test ansq lequel seront sauvegard\xE9 et charg\xE9s les fichiers . */ Added: trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/RemplissageData.java =================================================================== --- trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/RemplissageData.java (rev 0) +++ trunk/soft/fudaa-crue/dodico/src/test/java/org/fudaa/dodico/crue/dao/RemplissageData.java 2009-04-07 13:34:12 UTC (rev 4615) @@ -0,0 +1,611 @@ +package org.fudaa.dodico.crue.dao; + +import java.util.ArrayList; +import java.util.List; + +import org.fudaa.dodico.crue.metier.emh.CatEMHNoeud; +import org.fudaa.dodico.crue.metier.emh.CrueData; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheBarrageFilEau; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheOrifice; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBranchePDC; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheSaintVenant; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheSeuilLateral; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtBrancheSeuilTransversal; +import org.fudaa.dodico.crue.metier.emh.DonCalcSansPrtSection; +import org.fudaa.dodico.crue.metier.emh.DonFrt; +import org.fudaa.dodico.crue.metier.emh.DonPrtCInitBranche; +import org.fudaa.dodico.crue.metier.emh.DonPrtCInitBranchePdc; +import org.fudaa.dodico.crue.metier.emh.DonPrtCInitNoeud; +import org.fudaa.dodico.crue.metier.emh.DonPrtGeoBrancheSaintVenant; +import org.fudaa.dodico.crue.metier.emh.DonPrtGeoCasierProfil; +import org.fudaa.dodico.crue.metier.emh.DonPrtGeoSectionIdem; +import org.fudaa.dodico.crue.metier.emh.DonPrtGeoSectionProfil; +import org.fudaa.dodico.crue.metier.emh.DonPrtReseau; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheBarrageFilEau; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheBarrageGenerique; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheOrifice; +import org.fudaa.dodico.crue.metier.emh.EMHBranchePdc; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheSaintVenant; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheSeuilLongitudinale; +import org.fudaa.dodico.crue.metier.emh.EMHBrancheSeuilTransversal; +import org.fudaa.dodico.crue.metier.emh.EMHCasierMNT; +import org.fudaa.dodico.crue.metier.emh.EMHCasierProfil; +import org.fudaa.dodico.crue.metier.emh.EMHSectionIdem; +import org.fudaa.dodico.crue.metier.emh.EMHSectionInterpolee; +import org.fudaa.dodico.crue.metier.emh.EMHSectionProfil; +import org.fudaa.dodico.crue.metier.emh.EMHSectionSansGeometrie; +import org.fudaa.dodico.crue.metier.emh.ElemOrifice; +import org.fudaa.dodico.crue.metier.emh.ElemSeuil; +import org.fudaa.dodico.crue.metier.emh.ElemSeuilAvecPdc; +import org.fudaa.dodico.crue.metier.emh.FrottementPoint; +import org.fudaa.dodico.crue.metier.emh.LitNumerote; +import org.fudaa.dodico.crue.metier.emh.LoiFF; +import org.fudaa.dodico.crue.metier.emh.PtProfil; +import org.fudaa.dodico.crue.metier.emh.RelationEMH; +import org.fudaa.dodico.crue.metier.emh.StriRefC; +import org.fudaa.dodico.crue.metier.emh.StriRefH; +import org.fudaa.dodico.crue.metier.emh.StriRefZ; +import org.fudaa.dodico.crue.metier.helper.EMHNoeudHelper; + +public class RemplissageData { + + + /** + * remplit l'ensemble des donn\xE9es pour faire les test. Methode a updgrader et a reutiliser poru centraliser les tests. + * + * @return + */ + public static CrueData remplissageDonneeTest() { + CrueData data = new CrueData(); + + // -- cr\xE9ation de noeuds --// + DonPrtCInitNoeud condInitNoeud = null; + int cptNoeuds = 1; + while (cptNoeuds < 25) { + CatEMHNoeud noeud = new CatEMHNoeud("N" + cptNoeuds++); + // -- 2 condition init pour tous les noeuds --// + condInitNoeud = new DonPrtCInitNoeud(); + condInitNoeud.setZIni(cptNoeuds); + noeud.addDPTI(condInitNoeud); + + condInitNoeud = new DonPrtCInitNoeud(); + condInitNoeud.setZIni(cptNoeuds + 25); + noeud.addDPTI(condInitNoeud); + + data.getNoeuds().add(noeud); + } + + // --Creation des donnees DONFRT --// + List<DonFrt> listeDonFrt = remplissageDonneeTestDFRT(); + + // -- creation des casiers--// + EMHCasierProfil casierProfil = new EMHCasierProfil("CASIER PROFIL 001"); + casierProfil.setActive(false); + // -- Donnees DPTI --// + DonPrtCInitCasier condInitCasier = new DonPrtCInitCasier(); + condInitCasier.setQruis(234.123); + casierProfil.addDPTI(condInitCasier); + // -- recherche du noeud 25 precedemment ins\xE9r\xE9 --// + CatEMHNoeud noeud25 = EMHNoeudHelper.findByReference("N22", data); + casierProfil.setNoeud(noeud25); + // -- Donnees DPTG --// + // -- Ajout de 3 donn\xE9es DPTG --// + DonPrtGeoCasierProfil geoCasier = new DonPrtGeoCasierProfil(); + geoCasier.setListeProfils(remplirSeriesProfilsDPTG(2)); + geoCasier.setLongueur(777); + geoCasier.setNom("PROFIL01 de 001"); + geoCasier.setMLitNumerotes(remplirLitsDPTG(3, listeDonFrt.get(0), listeDonFrt.get(5))); + casierProfil.addDPTG(geoCasier); + + geoCasier = new DonPrtGeoCasierProfil(); + geoCasier.setListeProfils(remplirSeriesProfilsDPTG(8)); + geoCasier.setLongueur(423); + geoCasier.setNom("PROFIL02 de 001"); + geoCasier.setMLitNumerotes(remplirLitsDPTG(3, listeDonFrt.get(5), listeDonFrt.get(6))); + casierProfil.addDPTG(geoCasier); + + geoCasier = new DonPrtGeoCasierProfil(); + geoCasier.setListeProfils(remplirSeriesProfilsDPTG(1)); + geoCasier.setLongueur(2); + geoCasier.setNom("PROFIL03 de 001"); + geoCasier.setMLitNumerotes(remplirLitsDPTG(3, listeDonFrt.get(2), listeDonFrt.get(1))); + casierProfil.addDPTG(geoCasier); + + data.add(casierProfil); + + // -- ajout d'un autre casier profil qui utilise le meme profil DPTG --// + casierProfil = new EMHCasierProfil("CASIER PROFIL PIque DPTG"); + casierProfil.setActive(false); + CatEMHNoeud noeud17 = EMHNoeudHelper.findByReference("N17", data); + casierProfil.setNoeud(noeud17); + // -- Donnees DPTG --// + casierProfil.addDPTG(geoCasier); + data.add(casierProfil); + + EMHCasierMNT casierMNT = new EMHCasierMNT("CASIER MNT 002"); + casierMNT.setActive(true); + // -- recherche du noeud 12 precedemment ins\xE9r\xE9 --// + CatEMHNoeud noeud12 = EMHNoeudHelper.findByReference("N12", data); + casierMNT.setNoeud(noeud12); + condInitCasier = new DonPrtCInitCasier(); + condInitCasier.setQruis(12.11); + casierMNT.addDPTI(condInitCasier); + data.add(casierMNT); + + // -- creation des sections --// + EMHSectionInterpolee interpol = new EMHSectionInterpolee("SEC INT"); + + // -- dscp --// + DonCalcSansPrtSection calculSection = new DonCalcSansPrtSection(); + calculSection.setCoeffConv(12.25); + calculSection.setCoeffDiv(11.13); + calculSection.setCoeffPond(2.251524); + interpol.addDSCP(calculSection); + + data.add(interpol); + + // -- Section Profil --// + EMHSectionProfil profil = new EMHSectionProfil("SEC PROF"); + + // -- dscp --// + calculSection = new DonCalcSansPrtSection(); + calculSection.setCoeffConv(09.11); + calculSection.setCoeffDiv(11); + calculSection.setCoeffPond(212.2); + profil.addDSCP(calculSection); + + // -- Donnees DPTG --// + // -- Ajout de 3 donn\xE9es DPTG --// + DonPrtGeoSectionProfil geoSection = new DonPrtGeoSectionProfil(); + geoSection.setListeProfils(remplirSeriesProfilsDPTG(2)); + geoSection.setNom("PROFIL_SECTION_007"); + geoSection.setMLitNumerotes(remplirLitsDPTG(3, listeDonFrt.get(0), listeDonFrt.get(5))); + profil.addDPTG(geoSection); + data.add(profil); + + EMHSectionSansGeometrie geometrie = new EMHSectionSansGeometrie("SEC GEOM"); + + // -- dscp --// + calculSection = new DonCalcSansPrtSection(); + calculSection.setCoeffConv(255); + calculSection.setCoeffDiv(999); + calculSection.setCoeffPond(777); + geometrie.addDSCP(calculSection); + data.add(geometrie); + + // -- Section Idem --// + EMHSectionIdem sectionIdem = new EMHSectionIdem("SEC IDEM"); + + // -- dscp --// + DonCalcSansPrtSection calculSection2 = new DonCalcSansPrtSection(); + calculSection2.setCoeffConv(12.25); + calculSection2.setCoeffDiv(11.13); + calculSection2.setCoeffPond(2.251524); + sectionIdem.addDSCP(calculSection2); + + // -- DPTG --// + DonPrtGeoSectionIdem geoIdem = new DonPrtGeoSectionIdem(); + geoIdem.setDW(65535); + sectionIdem.addDPTG(geoIdem); + data.add(sectionIdem); + + // -- creation des branches --// + DonPrtCInitBranche condInitBranche1 = null; + DonPrtCInitBranchePdc condInitBranche2 = null; + + // EMHBrancheSaintVenant + EMHBrancheSaintVenant branche1 = new EMHBrancheSaintVenant("BRANCHE VENANT1"); + branche1.setActive(true); + branche1.setNoeudAmont(EMHNoeudHelper.findByReference("N12", data)); + branche1.setNoeudAval(EMHNoeudHelper.findByReference("N1", data)); + + // -- donnees DPTI --// + condInitBranche1 = new DonPrtCInitBranche(); + condInitBranche1.setQinit(12.5); + branche1.addDPTI(condInitBranche1); + // -- donnees DSCP --// + DonCalcSansPrtBrancheSaintVenant dataCalcul = new DonCalcSansPrtBrancheSaintVenant(); + dataCalcul.setCoeffBeta(5.55); + dataCalcul.setCoefRuis(6.66); + dataCalcul.setCoeffRuisQdm(7.77); + branche1.addDSCP(dataCalcul); + List<RelationEMH> listeSections = new ArrayList<RelationEMH>(); + listeSections.add(new RelationEMH(interpol, "POSITION SECTION INTERPOL", 123.4)); + listeSections.add(new RelationEMH(geometrie, "POSITION SECTION GEOMETRIE", 123.4)); + branche1.setListeSections(listeSections); + + // -- Donnees DPTG --// + DonPrtGeoBrancheSaintVenant geoPrt = new DonPrtGeoBrancheSaintVenant(); + geoPrt.setCoefSinuo(255); + branche1.addDPTG(geoPrt); + + data.add(branche1); + + // EMHBrancheBarrageGenerique + EMHBrancheBarrageGenerique branche2 = new EMHBrancheBarrageGenerique("BRANCHE CHANEL"); + branche2.setActive(false); + branche2.setNoeudAmont(EMHNoeudHelper.findByReference("N5", data)); + branche2.setNoeudAval(EMHNoeudHelper.findByReference("N7", data)); + + // -- donnees DPTI --// + condInitBranche1 = new DonPrtCInitBranche(); + condInitBranche1.setQinit(2.5); + + branche2.addDPTI(condInitBranche1); + + // -- donnees DSCP --// + DonCalcSansPrtBrancheBarrageFilEau dataCalcul1 = new DonCalcSansPrtBrancheBarrageFilEau(); + dataCalcul1.setQLimInf(144); + dataCalcul1.setQLimSup(441); + LoiFF loi = new LoiFF(); + loi.setNom("Loi BRANCHE GENE"); + dataCalcul1.setRegimeDenoye(loi); + dataCalcul1.setListElt(remplirListeSeuils()); + branche2.addDSCP(dataCalcul1); + + listeSections = new ArrayList<RelationEMH>(); + listeSections.add(new RelationEMH(profil, "POSITION SECTION PROFIL", 212.121)); + branche2.setListeSections(listeSections); + data.add(branche2); + + // EMHBrancheOrifice + EMHBrancheOrifice branche3 = new EMHBrancheOrifice("BRANCHE ORIFICE"); + branche3.setActive(false); + branche3.setNoeudAmont(EMHNoeudHelper.findByReference("N5", data)); + branche3.setNoeudAval(EMHNoeudHelper.findByReference("N7", data)); + // -- donnees DPTI --// + condInitBranche2 = new DonPrtCInitBranchePdc(); + condInitBranche2.setQinit(65535); + condInitBranche2.setOuvPasseDessous(255); + branche3.addDPTI(condInitBranche2); + // -- donnees DSCP --// + // -- liste element orifices --// + DonCalcSansPrtBrancheOrifice dataCalcul2 = new DonCalcSansPrtBrancheOrifice(); + dataCalcul2.setElement(remplirListeOrifices()); + dataCalcul2.setFormulePdc("Formule PDC du siecle!"); + branche3.addDSCP(dataCalcul2); + + listeSections = new ArrayList<RelationEMH>(); + listeSections.add(new RelationEMH(profil, "test", 777)); + branche3.setListeSections(listeSections); + data.add(branche3); + + // EMHBrancheSeuilTransversal + EMHBrancheSeuilTransversal branche4 = new EMHBrancheSeuilTransversal("BRANCHE TRANSVERSALE ELEMSEUIL"); + branche4.setActive(false); + branche4.setNoeudAmont(EMHNoeudHelper.findByReference("N3", data)); + branche4.setNoeudAval(EMHNoeudHelper.findByReference("N12", data)); + // -- donnees DPTI --// + condInitBranche1 = new DonPrtCInitBranche(); + condInitBranche1.setQinit(12.254); + branche4.addDPTI(condInitBranche1); + + // -- donnees DSCP --// + // -- liste element orifices --// + DonCalcSansPrtBrancheSeuilTransversal dataCalcul3 = new DonCalcSansPrtBrancheSeuilTransversal(); + dataCalcul3.setListElt(remplirListeSeuilsPDC()); + dataCalcul3.setFormulePdc("Divergent"); + branche4.addDSCP(dataCalcul3); + + listeSections = new ArrayList<RelationEMH>(); + listeSections.add(new RelationEMH(profil, "Profil test", 2548)); + branche4.setListeSections(listeSections); + data.add(branche4); + + // EMHBrancheSeuilLongitudinal + EMHBrancheSeuilLongitudinale branche5 = new EMHBrancheSeuilLongitudinale("BRANCHE LATERALE ELEMSEUIL"); + branche5.setActive(false); + branche5.setNoeudAmont(EMHNoeudHelper.findByReference("N3", data)); + branche5.setNoeudAval(EMHNoeudHelper.findByReference("N12", data)); + // -- donnees DPTI --// + condInitBranche1 = new DonPrtCInitBranche(); + condInitBranche1.setQinit(12.254); + branche5.addDPTI(condInitBranche1); + + // -- donnees DSCP --// + // -- liste element orifices --// + DonCalcSansPrtBrancheSeuilLateral dataCalcul4 = new DonCalcSansPrtBrancheSeuilLateral(); + dataCalcul4.setListElt(remplirListeSeuilsPDC()); + dataCalcul4.setFormulePdc("Convergent"); + branche5.addDSCP(dataCalcul4); + + listeSections = new ArrayList<RelationEMH>(); + listeSections.add(new RelationEMH(profil, "Profil test 3", 457)); + branche5.setListeSections(listeSections); + data.add(branche5); + + // EMHBrancheBarrageFilEau + EMHBrancheBarrageFilEau branche6 = new EMHBrancheBarrageFilEau("BRANCHE BARRAGE FIL EAU"); + branche6.setActive(false); + branche6.setNoeudAmont(EMHNoeudHelper.findByReference("N3", data)); + branche6.setNoeudAval(EMHNoeudHelper.findByReference("N12", data)); + // -- donnees DPTI --// + condInitBranche1 = new DonPrtCInitBranche(); + condInitBranche1.setQinit(12.254); + branche6.addDPTI(condInitBranche1); + + // -- donnees DSCP --// + // -- liste element orifices --// + DonCalcSansPrtBrancheBarrageFilEau dataCalcul5 = new DonCalcSansPrtBrancheBarrageFilEau(); + dataCalcul5.setQLimInf(144); + dataCalcul5.setQLimSup(441); + loi = new LoiFF(); + loi.setNom("Loi Speciale"); + dataCalcul5.setRegimeDenoye(loi); + dataCalcul5.setListElt(remplirListeSeuils()); + branche6.addDSCP(dataCalcul5); + + listeSections = new ArrayList<RelationEMH>(); + listeSections.add(new RelationEMH(profil, "VAR TEST profil", 111)); + branche6.setListeSections(listeSections); + data.add(branche6); + + // EMHBranchePdc + EMHBranchePdc branche7 = new EMHBranchePdc("BRANCHE PDC"); + branche7.setActive(false); + branche7.setNoeudAmont(EMHNoeudHelper.findByReference("N3", data)); + branche7.setNoeudAval(EMHNoeudHelper.findByReference("N12", data)); + // -- donnees DPTI --// + condInitBranche1 = new DonPrtCInitBranchePdc(); + condInitBranche1.setQinit(12.254); + branche7.addDPTI(condInitBranche1); + + // -- donnees DSCP --// + // -- liste element orifices --// + DonCalcSansPrtBranchePDC dataCalcul6 = new DonCalcSansPrtBranchePDC(); + + loi = new LoiFF(); + loi.setNom("Loi du PDC"); + dataCalcul6.setPdc_DZ(loi); + branche7.addDSCP(dataCalcul6); + + listeSections = new ArrayList<RelationEMH>(); + listeSections.add(new RelationEMH(profil, "profil section", 12345)); + branche7.setListeSections(listeSections); + data.add(branche7); + + return data; + } + + public static List<LitNumerote> remplirLitsDPTG(int a, DonFrt don1, DonFrt don2) { + List<LitNumerote> listeLits = new ArrayList<LitNumerote>(); + + LitNumerote litNum = new LitNumerote(); + + litNum.setDebut(new PtProfil(13.2 * a, 101.2 * a)); + litNum.setFin(new PtProfil(44.2 * a, 2000.2 * a)); + litNum.setEstActif(true); + litNum.setEstMineur(false); + litNum.setMDonFrt(don1); + listeLits.add(litNum); + + litNum = new LitNumerote(); + litNum.setDebut(new PtProfil(200 * a, 11.2 * a)); + litNum.setFin(new PtProfil(1000 * a, 13 * a)); + litNum.setEstActif(false); + litNum.setEstMineur(true); + litNum.setMDonFrt(don2); + listeLits.add(litNum); + + return listeLits; + } + + public static List<PtProfil> remplirSeriesProfilsDPTG(int a) { + List<PtProfil> listeProfils = new ArrayList<PtProfil>(); + listeProfils.add(new PtProfil(13.2 * a, 101.2 * a)); + listeProfils.add(new PtProfil(1.2 * a, 12 * a)); + listeProfils.add(new PtProfil(2.2 * a, 2 * a)); + listeProfils.add(new PtProfil(123.2 * a, 10 * a)); + listeProfils.add(new PtProfil(1003.2 * a, 11 * a)); + listeProfils.add(new PtProfil(143.2 * a, 12 * a)); + listeProfils.add(new PtProfil(1.2 * a, 111 * a)); + listeProfils.add(new PtProfil(13.2 * a, 777 * a)); + listeProfils.add(new PtProfil(0.2 * a, 5.2 * a)); + listeProfils.add(new PtProfil(12.2 * a, 0.2 * a)); + listeProfils.add(new PtProfil(5.2 * a, 1.2 * a)); + listeProfils.add(new PtProfil(99.2 * a, 2.2 * a)); + listeProfils.add(new PtProfil(102.2 * a, 111.2 * a)); + return listeProfils; + } + + public static List<ElemOrifice> remplirListeOrifices() { + List<ElemOrifice> listeEltSeuilsOrifices = new ArrayList<ElemOrifice>(); + ElemOrifice orif = new ElemOrifice(); + orif.setCoeffCtrLim(999); + orif.setCoeffQ(23); + orif.setLarg(11); + orif.setSens("Bidirect"); + orif.setZSeuil(22.23); + listeEltSeuilsOrifices.add(orif); + orif = new ElemOrifice(); + orif.setCoeffCtrLim(543); + orif.setCoeffQ(12345); + orif.setLarg(987); + orif.setSens("Uni"); + orif.setZSeuil(1.9); + listeEltSeuilsOrifices.add(orif); + orif = new ElemOrifice(); + orif.setCoeffCtrLim(2); + orif.setCoeffQ(3); + orif.setLarg(4); + orif.setSens("5 Uni"); + orif.setZSeuil(6); + listeEltSeuilsOrifices.add(orif); + return listeEltSeuilsOrifices; + } + + public static List<ElemSeuilAvecPdc> remplirListeSeuilsPDC() { + List<ElemSeuilAvecPdc> listeEltSeuils = new ArrayList<ElemSeuilAvecPdc>(); + ElemSeuilAvecPdc orif = new ElemSeuilAvecPdc(); + orif.setCoeffPdc(23); + orif.setCoeffD(23); + orif.setLarg(11); + orif.setZSeuil(22.23); + listeEltSeuils.add(orif); + orif = new ElemSeuilAvecPdc(); + orif.setCoeffPdc(1.1); + orif.setCoeffD(12345); + orif.setLarg(987); + orif.setZSeuil(1.9); + listeEltSeuils.add(orif); + orif = new ElemSeuilAvecPdc(); + orif.setCoeffPdc(99.9); + orif.setCoeffD(3); + orif.setLarg(4); + orif.setZSeuil(6); + listeEltSeuils.add(orif); + return listeEltSeuils; + } + + public static List<ElemSeuil> remplirListeSeuils() { + List<ElemSeuil> listeEltSeuils = new ArrayList<ElemSeuil>(); + ElemSeuil orif = new ElemSeuil(); + + orif.setCoeffD(23); + orif.setLarg(11); + orif.setZSeuil(22.23); + listeEltSeuils.add(orif); + orif = new ElemSeuil(); + + orif.setCoeffD(12345); + orif.setLarg(987); + orif.setZSeuil(1.9); + listeEltSeuils.add(orif); + orif = new ElemSeuil(); + + orif.setCoeffD(3); + orif.setLarg(4); + orif.setZSeuil(6); + listeEltSeuils.add(orif); + return listeEltSeuils; + } + + public static CrueData remplissageDonneeTestErreur() { + CrueData res = remplissageDonneeTest(); + + res.getAllEMH().remove(EMHNoeudHelper.findByReference("N5", res)); + res.getAllEMH().remove(EMHNoeudHelper.findByReference("N12", res)); + res.getAllEMH().remove(EMHNoeudHelper.findByReference("N3", res)); + res.getAllEMH().remove(EMHNoeudHelper.findByReference("N1", res)); + + return res; + } + + /** + * remplit l'ensemble des donn\xE9es pour faire les test. Methode a updgrader et a reutiliser poru centraliser les tests. + * @return + */ + public static List<DonFrt> remplissageDonneeTestDFRT(){ + List<DonFrt> data=new ArrayList<DonFrt>(); + + DonFrt ref1=new StriRefC("ref#stric"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefZ("rsdfsf"); + ref1.addPoint(new FrottementPoint(12,23)); + ref1.addPoint(new FrottementPoint(452,1)); + data.add(ref1); + ref1=new StriRefH("test"); + ref1.addPoint(new FrottementPoint(1,1)); + ref1.addPoint(new FrottementPoint(1222,2143)); + data.add(ref1); + ref1=new StriRefC("@#hgf55"); + ref1.addPoint(new FrottementPoint(10,20)); + ref1.addPoint(new FrottementPoint(12,23)); + data.add(ref1); + ref1=new StriRefH("12 235"); + ref1.addPoint(new FrottementPoint(10,20)); + ref1.addPoint(new FrottementPoint(1712,52253)); + data.add(ref1); + ref1=new StriRefH("XIII"); + ref1.addPoint(new FrottementPoint(10,20)); + ref1.addPoint(new FrottementPoint(2,3)); + data.add(ref1); + data.add(ref1); + ref1=new StriRefZ("ba28 d"); + ref1.addPoint(new FrottementPoint(10,20)); + ref1.addPoint(new FrottementPoint(666,555)); + data.add(ref1); + data.add(ref1); + ref1=new StriRefZ("ref z"); + ref1.addPoint(new FrottementPoint(14,16)); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefZ("rh 132"); + ref1.addPoint(new FrottementPoint(10,20)); + ref1.addPoint(new FrottementPoint(12,23)); + data.add(ref1); + ref1=new StriRefH("refh12"); + ref1.addPoint(new FrottementPoint(10,20)); + ref1.addPoint(new FrottementPoint(2112,3223)); + data.add(ref1); + + return data; + } + + + + public static List<DonFrt> remplissageDonneeTestErreurDFRT(){ + List<DonFrt> data=new ArrayList<DonFrt>(); + + DonFrt ref1=new StriRefC("ref#stric"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefZ("rsdfsf"); + ref1.addPoint(new FrottementPoint(12,23)); + data.add(ref1); + ref1=new StriRefH("test"); + ref1.addPoint(new FrottementPoint(1,1)); + data.add(ref1); + ref1=new StriRefC("@#hgf55"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefH("12 235"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefH("XIII"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefZ("ba28 d"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefZ("ref z"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefZ("rh 132"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + ref1=new StriRefH("refh12"); + ref1.addPoint(new FrottementPoint(10,20)); + data.add(ref1); + + return data; + } + + + /** + * remplit l'ensemble des donn\xE9es pour faire les test. Methode a updgrader et a reutiliser poru centraliser les tests. + * + * @return + */ + public static DonPrtReseau remplissageDonneeTestOPTG() { + DonPrtReseau data = new DonPrtReseau(); + + data.setRegleDecal(1.2); + data.setRegleLargSeuil(2.3); + data.setReglePdxMax(3.4); + data.setReglePenteMax(4.5); + data.setReglePenteRupture(5.6); + data.setRegleProfPlat(6.7); + data.se... [truncated message content] |