tsp-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RE : [Tsp-devel] TSP_STATUS, TRUE, FALSE etc...


From: Stephane GALLES
Subject: Re: RE : [Tsp-devel] TSP_STATUS, TRUE, FALSE etc...
Date: Fri, 14 Apr 2006 15:46:17 +0200
User-agent: Thunderbird 1.5 (Windows/20051201)

address@hidden wrote:
Pour moi on a 2 choix : Tout en TSP_STATUS,  ou alors TOUT en philo C like
(0=OK, <0 erreur, ....) mais pas forcément adapté à du C++ ou autre truc qui
gère les exceptions. En tout cas il ne faut pas melanger les 2..

Disons que justement la philo C-like a ses limites vu que
souvent OK = 0 et NOK <0 mais aussi actuellement
TRUE = 1 et FALSE = 0
et puis quand pas OK il faut pouvoir tester par rapport à ENOxxxx en C-like
donc nous on fera par rapport à TSP_STATUS_xxx

donc on serait un peu comme C-like sauf qu'il ne faut PAS
supposer TSP_STATUS_OK == 0 (même si c'est le cas aujourd'hui).

Excellente idée. Et puis justement je trouve que pour nos amis C++, JAVA, Python, Ruby la technique
des TSP_STATUS se transforme trés bien en Exceptions

Si on a des exception à disposition et selon la signification du code on peut : - garder le code en tant que code de retour si c'est autre chose que TSP_STATUS_OK et autre
chose qu'un code d'erreur
- créer une exception précise pour ce code si c'est un code d'erreur important - créer une exception plus générique qui a un attribut qui conserve la valeur du code pour
une famille de code d'erreur qui ne nécessitent pas leur propre exception.

Un truc comme ça en tous cas.
Le 14/04/06, address@hidden <address@hidden> a écrit :
Cher amis TSPiens,

J'aimerais rationaliser un peu les codes de retours
des diffférentes API TSP (intérieur du CORE et également API publique).

Certaines fonctions renvoient TRUE/FALSE
d'autres 0 et  != 0
d'autres des TSP_STATUS_xxx
d'autres encore TSP_CONSUMER_STATUS_xxx

J'aimerais unifier tout ça en ne renvoyant uniquement
des TSP_STATUS_xxx afin de pouvoir vérifer la valeur
de retour du genre

if (TSP_STATUS_OK!=TSP_consumer_request_open) {

]

Ces status étant définis par un enum dans tsp_rpc.x
(et plus tard [ bientôt :))] dans tsp.idl) on peut
dispoer des valeurs "symboliques" partout (ruby, perl, python, C, java
...)
de façon consistente.

Les seules fonctions qui ne renverraient pas de "TSP_STATUS_xxx"
seraien celles renvoyant des pointeurs.
Auquel cas pour ces dernière on poeut tester NULL ou !=NULL

Qu'en dîtes-vous?

---
Eric Noulard - Software Architect
BT Consulting & Systems Integration
tel: (+33) (0)534 604970
mob: (+33) (0)607 948100
web: www.bt.com/consulting



_______________________________________________
Tsp-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/tsp-devel


------------------------------------------------------------------------

_______________________________________________
Tsp-devel mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/tsp-devel







reply via email to

[Prev in Thread] Current Thread [Next in Thread]