]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commit
Subclass vendor specific exceptions.
authorJohn Griffith <john.griffith@solidfire.com>
Mon, 11 Nov 2013 21:57:44 +0000 (14:57 -0700)
committerGerrit Code Review <review@openstack.org>
Thu, 21 Nov 2013 18:39:04 +0000 (18:39 +0000)
commit8b6f41715c4a4a8554444d634fbe62f73aa084d2
tree8e32d4084f3f8787770d02dbc5292f11a69e38c9
parent9f138a1efdab9dd0f7b4bbfc9835bd53dfed762b
Subclass vendor specific exceptions.

Up until now drivers have been able to define their
own custom exception classes.  In most cases these are
inherited from either a native python exception class
or at best the base cinder exception class.

The problem with this is that it makes it very difficult
for higher layers (such as volume manager) to do any intelligent
exception handling and the base Cinder.exception class is too broad.

This change takes the first step in cleaning this up.  We create
new exception classes for all drivers to inherit from:
  VolumeDriverException
  VolumeBackendAPIException
  BackupDriverException

This still allows the freedom to create custom exceptions for a
particular driver, however it also gives us a common exception
class to catch and check in higher levels.  Further refinement
and standardization will be helpful going forward but this
should give us a good start.

Change-Id: I8c2ca4eecf7a64a82846d6d24fc0239db086237e
cinder/exception.py
cinder/tests/test_glusterfs.py
cinder/tests/test_nfs.py
cinder/tests/test_solidfire.py
cinder/volume/drivers/solidfire.py