Hello,

Some time ago I brought an 'exceptions' topic on IRC, basically, I think
it would be nice to make exceptions more centralised and unified among
drivers.

The general idea is to create some base exception, e.g.
LibCloudException and subclass all other exception from it.

From a user perspective it will allow to identify libcloud exceptions
quite easily.

My proposal is pretty simple:

 - just add LibCloudException to libcloud.types
 - make other exceptions in libcloud.type be a subclass of 
   LibCloudException
 - eventually convert all the drivers to this scheme

I though about moving all the exceptions to a separate module but
considering that we have only handful of them I don't see much sense in
it. Also, I'm not sure it makes sense to introduce driver specific
exceptions... even if we need this we probably could introduce a
'driver' property for LibCloudException which would show the driver an
exception came from.

I've crafted a simple patch illustrating an idea:

http://people.freebsd.org/~novel/misc/libcloud_exc.diff

Comments are welcome,

Roman Bogorodskiy

Attachment: pgp8A7vMDLzfa.pgp
Description: PGP signature

Reply via email to