From: pascale.noyret Date: Wed, 23 Sep 2020 15:58:25 +0000 (+0200) Subject: partage pour test X-Git-Tag: MDM_V0~19 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=722984e675e2de5e4156c0c3e76da4c69cd09285;p=tools%2Feficas.git partage pour test --- diff --git a/Efi2Xsd/AccasXsd.py b/Efi2Xsd/AccasXsd.py index 9e62c82b..1176a5de 100755 --- a/Efi2Xsd/AccasXsd.py +++ b/Efi2Xsd/AccasXsd.py @@ -122,9 +122,8 @@ class X_definition: def definitNomDuTypePyxb(self,forceACreer=False): - if hasattr(self,'nomDuTypePyxb') : - self.aCreer = False - return self.nomDuTypePyxb + if hasattr(self,'nomDuTypePyxb') : return self.nomDuTypePyxb + #except : pass self.aCreer = True cata = CONTEXT.getCurrentCata() nom='T_'+self.nom @@ -160,7 +159,7 @@ class X_compoFactoriseAmbigu(X_definition): def __init__(self,nom,listeDeCreation,pere): #print ('__ X_compoFactoriseAmbigu', listeDeCreation) - #for (i,index) in listeDeCreation : print (i.nom) + #for (i,index) in listeDeCreation : print i.nom self.label = 'compoAmbigu' self.nom=nom self.pere=pere @@ -173,8 +172,8 @@ class X_compoFactoriseAmbigu(X_definition): self.mcXSD.append(mc) self.ordre_mc.append(mc.nom) - print (self.mcXSD) - print (self.ordre_mc) + #print (self.mcXSD) + #print (self.ordre_mc) self.construitEntites(self.mcXSD) self.constructionArbrePossibles() lesPossibles=deepcopy(self.arbrePossibles) @@ -192,7 +191,7 @@ class X_compoFactoriseAmbigu(X_definition): #print ('self.mcXSD',self.mcXSD) self.texteComplexe += finTypeSubstDsBlocFactorise self.texteComplexe +=self.texteComplexeVenantDesFils - # PN ?? 12 mai self.texteComplexe=self.texteComplexe+self.texteComplexeVenantDesFils + self.texteComplexe=self.texteComplexe+self.texteComplexeVenantDesFils self.label='BlocAmbigu' #print ('fin pour prepareDumpXSD pour', self.nom) @@ -294,7 +293,6 @@ class X_compoFactoriseAmbigu(X_definition): def factoriseEtCreeDump(self, laListe, indent=2 ,nomAppel=None): #print ('_______________________________ factoriseEtCreeDump') #print(self.nom, laListe, indent, nomAppel) - import traceback; traceback.print_stack() maListeRetour=[] aReduire={} @@ -356,13 +354,13 @@ class X_compoFactoriseAmbigu(X_definition): #print (self.texteComplexe) #print ('_____', 'self.texteComplexeVenantDesFils') #print (self.texteComplexeVenantDesFils) - print ('fin pour _______________________________', self.nom) + #print ('fin pour _______________________________', self.nom) return (maListeRetour) def ajouteAuxTextes(self,nomMC,indent) : #print ('ajouteAuxTextes', nomMC, self.nom, self.entites) - print ('ajouteAuxTextes', nomMC, self.entites[nomMC]) + #print ('ajouteAuxTextes', nomMC, self.entites[nomMC]) #for i in self.entites.keys() : print (self.entites[i][0].nom) if (indent > 3) : indent = indent - 3 else : indent = 0 @@ -370,10 +368,8 @@ class X_compoFactoriseAmbigu(X_definition): mc=self.entites[nomMC][0] mc.dumpXsd(dansFactorisation=True) self.texteComplexe += '\t'*(indent) + mc.texteElt - if mc.nomDuTypePyxb not in self.mcDejaDumpe : - self.texteComplexeVenantDesFils += mc.texteComplexe - self.texteSimple += mc.texteSimple - self.mcDejaDumpe.add(mc.nomDuTypePyxb) + self.texteComplexeVenantDesFils += mc.texteComplexe + self.texteSimple += mc.texteSimple return leType=type(self.entites[nomMC][0]) @@ -385,13 +381,12 @@ class X_compoFactoriseAmbigu(X_definition): # cette boucle ne fonctionne que pour des SIMP resteATraiter=copy(self.entites[nomMC]) - print ('________resteATraiter', resteATraiter) + #print ('________resteATraiter', resteATraiter) listePourUnion=[] first=1 while resteATraiter != [] : nvlListeATraiter=[] mc=resteATraiter[0] - #print (mc) listePourUnion.append(mc) for autre in resteATraiter[1:]: if not (mc.compare(autre)) : nvlListeATraiter.append(autre) @@ -400,11 +395,10 @@ class X_compoFactoriseAmbigu(X_definition): if len(listePourUnion) == 1: mc=listePourUnion[0] mc.dumpXsd(dansFactorisation=True,multiple=False,first=first) + if self.nom == 'B1_B2' and nomMC == 'Numerical': print (mc.dumpXsd) self.texteComplexe += '\t'*(indent) + mc.texteElt - if mc.nomDuTypePyxb not in self.mcDejaDumpe : - self.texteComplexeVenantDesFils += mc.texteComplexe - self.texteSimple += mc.texteSimple - self.mcDejaDumpe.add(mc.nomDuTypePyxb) + self.texteComplexeVenantDesFils += mc.texteComplexe + self.texteSimple += mc.texteSimple return # on ajoute le nom de l element @@ -415,25 +409,14 @@ class X_compoFactoriseAmbigu(X_definition): if len(listePourUnion) == 1 : mc=self.entites[nomMC][0] mc.dumpXsd(dansFactorisation=True,multiple=True,first=first) - if mc.nomDuTypePyxb not in self.mcDejaDumpe : - self.texteComplexeVenantDesFils += mc.texteComplexe - self.texteSimple += mc.texteSimple - self.mcDejaDumpe.add(mc.nomDuTypePyxb) + self.texteComplexeVenantDesFils += mc.texteComplexe + self.texteSimple += mc.texteSimple else : - # PN --> faire tous les cas tests for e in listePourUnion : - #print ( 'dans le else ', e) e.dumpXsd(dansFactorisation=True,multiple=True,first=first) - if first and (e.nomDuTypePyxb not in self.mcDejaDumpe) : - #print ('first -------- ',e.texteSimple) - self.texteComplexeVenantDesFils += e.texteComplexe - self.mcDejaDumpe.add(e.nomDuTypePyxb) - texteSimpleUnion += '\t'*(indent)+e.texteSimple - first=first * 0 - else : - texteSimpleUnion += '\t'*(indent)+e.texteSimple - #print ('non first -------- ',e.texteSimple) - # print (e.texteSimple) + self.texteComplexeVenantDesFils += e.texteComplexe + first=first * 0 + texteSimpleUnion += '\t'*(indent)+e.texteSimple texteSimpleUnion += finUnion texteSimpleUnion+=fermeSimpleType self.texteSimple += texteSimpleUnion @@ -453,11 +436,12 @@ class X_definitionComposee (X_definition): #print (self.nom) for mcFils in self.mcXSD : if not (isinstance(mcFils, Accas.BLOC)) : + #print (mcFils.nom , 'ajout') mcFils.dumpXsd(dansFactorisation) + #print (mcFils.texteSimple) self.texteComplexe += mcFils.texteElt self.texteSimple += mcFils.texteSimple texteComplexeVenantDesFils += mcFils.texteComplexe - continue else : #print (mcFils.nom) if hasattr(mcFils,'nomXML') and mcFils.nomXML in blocsDejaDumpes and mcFils.nomXML != None : continue @@ -469,9 +453,10 @@ class X_definitionComposee (X_definition): return texteComplexeVenantDesFils def dumpXsd(self, dansFactorisation=False, multiple = False, first=False): - #print ('_________ dumpXsd___________', self.nom) - #if PourTraduction : print (self.nom) - self.prepareDumpXSD() + print ('_________ dumpXsd___________', self.nom) + if PourTraduction : print (self.nom) + # le prepareDump est appele sur les fils + if not (self.dejaPrepareDump) : self.prepareDumpXSD() self.getNomDuCodeDumpe() self.nomDuTypePyxb = self.definitNomDuTypePyxb() @@ -517,7 +502,8 @@ class X_definitionComposee (X_definition): return True def prepareDumpXSD(self): - #print (' ************************ prepareDumpXSD pour', self.nom) + #print (' uuuuuuuuuuuuuuuuuuuuuuuuu prepareDumpXSD pour', self.nom) + self.dejaPrepareDump=True self.inUnion=False self.tousLesFils=[] self.mcXSD=[] @@ -596,7 +582,6 @@ class X_definitionComposee (X_definition): newListe=self.mcXSD[0:indexDebut] monEltFacteur=X_compoFactoriseAmbigu(nom,listeAFactoriser,self) - newListe.append(monEltFacteur) newListe=newListe+self.mcXSD[indexFin:] self.mcXSD=newListe @@ -732,7 +717,7 @@ class X_SIMP (X_definition): #-------------------------------- def dumpXsd(self, dansFactorisation=False, multiple = False, first=False): #print ('_______________' , '*******************', 'je passe la dans dumpXsd SIMP', self.nom, multiple, first) - if PourTraduction : print (self.nom) + #if PourTraduction : print (self.nom) self.prepareDumpXSD() if multiple : self.inUnion=True #print ('exploreObjet SIMP') @@ -786,6 +771,7 @@ class X_SIMP (X_definition): # self.aCreer est mis a jour ds definitNomDuTypePyxb # ou si elt est le 1er d une liste identique + #print ('je suis aCreer', self.aCreer) if not self.aCreer : return if not multiple : self.texteSimple += debutSimpleType.format(self.nomDuTypePyxb) @@ -1002,8 +988,8 @@ class X_JDC_CATA : if existeunUserASSD: if existeASSD : texteDesFields = texteDesFields + texteDesUserASSD[0:-2] +"/>\n\t\t" else: texteDesFields = texteDesUserASSD[0:-2] - print (texteDesUserASSD) - print (texteDesFields) + #print (texteDesUserASSD) + #print (texteDesFields) if texteDesFields != "" : texteKeyRef += producingASSDkeyRefDeclaration.format( clef ,texteDesFields) @@ -1039,7 +1025,7 @@ class X_JDC_CATA : #import pprint #if (not PourTraduction) and (dico != {}) : pprint.pprint(dico) print ('__________________________ decommenter pour le texteXSD________________________') - print (self.texteXSD) + #print (self.texteXSD) return self.texteXSD