1 #@ MODIF context_info Messages DATE 17/04/2007 AUTEUR COURTOIS M.COURTOIS
2 # -*- coding: iso-8859-1 -*-
3 # CONFIGURATION MANAGEMENT OF EDF VERSION
4 # ======================================================================
5 # COPYRIGHT (C) 1991 - 2007 EDF R&D WWW.CODE-ASTER.ORG
6 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
8 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
9 # (AT YOUR OPTION) ANY LATER VERSION.
11 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
12 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
13 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
14 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
16 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
17 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
18 # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
19 # ======================================================================
20 # RESPONSABLE COURTOIS M.COURTOIS
23 Ensemble de fonctions permettant de récupérer des infos sur le contexte
24 dans lequel se produit une erreur.
26 - d'aider à la compréhension du message,
27 - de fournir, si possible, des pistes de solution.
30 __all__ = ['context_concept', 'message_context_concept']
32 # -----------------------------------------------------------------------------
33 def context_concept(nom_concept):
34 """Retourne le nom de la commande ayant produit le concept `nom_concept`
35 et la liste des (commande, [mot-clé facteur,] mot-clé) où il est utilisé.
37 dico = { 'concept' : nom_concept, 'cmde_prod' : '', 'cmde_use' : [] }
38 jdc = CONTEXT.get_current_step()
39 co = jdc.sds_dict.get(nom_concept)
42 dico['cmde_prod'] = co.etape
43 # étape utilisant `nom_concept`
44 l_etape = jdc.get_liste_etapes()
50 dico['cmde_use'] = ', '.join(l_cmde)
53 # -----------------------------------------------------------------------------
54 def message_context_concept(*args, **kwargs):
55 """Appel context_concept et formatte le message.
57 fmt_concept = """Le concept '%(nom_concept)s' a été produit par %(nom_cmde_prod)s."""
58 dico = context_concept(*args, **kwargs)
60 'nom_concept' : dico['concept'],
61 'nom_cmde_prod' : dico['cmde_prod'].nom,
63 return fmt_concept % d
65 # -----------------------------------------------------------------------------
66 if __name__ == '__main__':