Design question regarding exceptions.

Bruno Desthuilliers bruno.42.desthuilliers at
Wed Jul 18 09:45:20 CEST 2007

asincero a écrit :
> I have a class called Users that provides a higher level of
> abstraction to an underlying "users" table in a pgsql database.  It
> has methods like "addUser()" and "deleteUser()" which, obviously, wrap
> the corresponding SQL statements.  My question is would it better to
> let any exceptions thrown by the underlying DB-API calls bubble up
> from these methods, or should I catch them inside the methods, wrap
> them inside my own custom exceptions, and throw those exceptions
> instead?

There's no absolute answer to this. But unless your "abstraction layer" 
is supposed to be usable with non-DB-API backends (ie: text files, LDAP, 
etc), I don't see any reason to abstract the exceptions.

More information about the Python-list mailing list