Projet

Général

Profil

Evolution #4723

Passer une valeur par défaut à CreoleClient.get_creole()

Ajouté par Daniel Dehennin il y a environ 11 ans. Mis à jour il y a environ 11 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Début:
18/01/2013
Echéance:
% réalisé:

100%

Temps passé:
Distribution:
EOLE 2.4

Description

Il est intéressant de pouvoir passer une valeur par défaut si la variable interrogé n’existe pas.

Cela rapproche le fonctionnement de CreoleClient.get_creole() de la méthode get() des dictionnaires.

Révisions associées

Révision 846a6a92 (diff)
Ajouté par Daniel Dehennin il y a environ 11 ans

Ajout d’une valeur de retour par défaut à « CreoleClient.get_creole() »

  • creole/server.py (CreoleServer.get): Envoi du code d’erreur « 4 » sur
    l’exception « NotFoundError » de tiramisu.
  • creole/client.py (NotFoundError): Nouvelle exception afin de détecter
    les requêtes sur les variables inexistantes.
    (CreoleClient.request): Prise en compte du code d’erreur « 4 » et lève
    l’exception « NotFoundError ».
    (CreoleClient.get_creole): Nouveau paramètre optionnel « default » à
    renvoyer à l’appelant si la variable demandé n’existe pas.

Fixes: #4723 @5m

Historique

#1 Mis à jour par Daniel Dehennin il y a environ 11 ans

  • Sujet changé de Passer une valeur par défaut à @CreoleClient.get_creole()@ à Passer une valeur par défaut à CreoleClient.get_creole()

#2 Mis à jour par Daniel Dehennin il y a environ 11 ans

  • Statut changé de Accepté à Résolu
  • % réalisé changé de 0 à 100

#3 Mis à jour par Joël Cuissinat il y a environ 11 ans

  • Statut changé de Résolu à Fermé
>>> from creole.client import CreoleClient
>>> c = CreoleClient()
>>> c.get_creole('xxx')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/dist-packages/creole/client.py", line 278, in get_creole
    raise err
creole.client.NotFoundError: option xxx not found in config
>>> c.get_creole('xxx', 'def')
'def'
>>> c.get_creole('adresse_ip_eth0')
u'192.168.230.202'
>>> c.get_creole('adresse_ip_eth0', 'def')
u'192.168.230.202'

Formats disponibles : Atom PDF