1 #@ MODIF N_OBJECT Noyau DATE 07/09/2009 AUTEUR COURTOIS M.COURTOIS
2 # -*- coding: iso-8859-1 -*-
3 # RESPONSABLE COURTOIS M.COURTOIS
4 # CONFIGURATION MANAGEMENT OF EDF VERSION
5 # ======================================================================
6 # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG
7 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
8 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
9 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
10 # (AT YOUR OPTION) ANY LATER VERSION.
12 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
13 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
14 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
15 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
17 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
18 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
19 # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
22 # ======================================================================
26 Ce module contient la classe OBJECT classe mère de tous les objets
27 servant à controler les valeurs par rapport aux définitions
33 Classe OBJECT : cette classe est virtuelle et sert de classe mère
34 aux classes de type ETAPE et MOCLES.
35 Elle ne peut etre instanciée.
36 Une sous classe doit obligatoirement implémenter les méthodes :
44 Retourne l'étape à laquelle appartient self
45 Un objet de la catégorie etape doit retourner self pour indiquer que
47 XXX double emploi avec self.etape ???
49 if self.parent == None: return None
50 return self.parent.get_etape()
54 Méthode qui supprime les références arrières suffisantes pour
55 que l'objet puisse etre correctement détruit par le
65 Retourne la valeur de l'objet. Cette méthode fournit
66 une valeur par defaut. Elle doit etre dérivée pour chaque
73 Indique si l'objet est un BLOC
77 def get_jdc_root(self):
79 Cette méthode doit retourner l'objet racine c'est à dire celui qui
83 return self.parent.get_jdc_root()
89 Retourne la valeur effective du mot-clé en fonction
90 de la valeur donnée. Defaut si val == None
92 if (val is None and hasattr(self.definition,'defaut')) :
93 return self.definition.defaut
97 def reparent(self,parent):
99 Cette methode sert a reinitialiser la parente de l'objet
104 class ErrorObj(OBJECT):
105 """Classe pour objets errones : emule le comportement d'un objet tel mcsimp ou mcfact
107 def __init__(self,definition,valeur,parent,nom="err"):
109 self.definition=definition
114 self.jdc = self.parent.jdc
115 #self.niveau = self.parent.niveau
116 #self.etape = self.parent.etape
122 def isvalid(self,cr='non'):
126 """ génère le rapport de validation de self """
128 self.cr.debut = "Mot-clé invalide : "+self.nom
129 self.cr.fin = "Fin Mot-clé invalide : "+self.nom
130 self.cr.fatal("Type non autorisé pour le mot-clé %s : '%s'" % (self.nom,self.valeur))