code: def delete(self, force=False):
          
          if force:
              self.detach()
              self.delete_all_snapshots()
          try:
              super(CloudBlockStorageVolume, self).delete()
          except exc.VolumeNotAvailable:
              # Notify the user? Record it somewhere?
              # For now, just re-raise
              raise
docs: Volumes cannot be deleted if either a) they are attached to a device, or
          b) they have any snapshots. This method overrides the base delete()
          method to both better handle these failures, and also to offer a 'force'
          option. When 'force' is True, the volume is detached, and any dependent
          snapshots are deleted before calling the volume's delete.