diff options
author | Jonathan Holloway <jholloway@redhat.com> | 2018-01-23 02:02:38 +0100 |
---|---|---|
committer | Nigel Babu <nigelb@redhat.com> | 2018-02-26 10:42:31 +0000 |
commit | ab7a71cc4b2862d267c3e6fae67c711e51abca77 (patch) | |
tree | 42060d76949e5c8bb4736c2ecdf1ecf68eed6df5 /glustolibs-gluster/glustolibs/gluster/exceptions.py | |
parent | 1374783418db58f6f4fe153d83082549bf2d000f (diff) |
initial dht libs
* glusterfile.py - helper for gluster client and backend files.
* glusterdir.py - helper for gluster client and backend dirs.
* brickdir.py - helper for collection and hashing of brickdirs (from pathinfo data).
* layout.py - base class for simple DHT layout validation.
* dht_test_util.py - utility module to walk a directory tree and run tests against files.
* constants.py - definitions for constants used in DHT libraries.
* exceptions.py - definitions for exceptions raised in DHT libraries.
Change-Id: I44770a822e0ec79561b3aa048e555320f622116a
Signed-off-by: Jonathan Holloway <jholloway@redhat.com>
Diffstat (limited to 'glustolibs-gluster/glustolibs/gluster/exceptions.py')
-rw-r--r-- | glustolibs-gluster/glustolibs/gluster/exceptions.py | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/glustolibs-gluster/glustolibs/gluster/exceptions.py b/glustolibs-gluster/glustolibs/gluster/exceptions.py index 42ee48441..c52dcee59 100644 --- a/glustolibs-gluster/glustolibs/gluster/exceptions.py +++ b/glustolibs-gluster/glustolibs/gluster/exceptions.py @@ -1,3 +1,86 @@ +#!/usr/bin/env python +# Copyright (C) 2018 Red Hat, Inc. <http://www.redhat.com> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +"""Exceptions for Gluster libraries and tests""" + + +class GlusterError(Exception): + """Base Gluster exception class.""" + def __init__(self, arg): + Exception.__init__(self, arg) + self.msg = arg + + +class TransportEndpointNotConnectedError(GlusterError): + """Exception for transport endpoint not connected error.""" + def __init__(self, arg): + GlusterError.__init__(self, arg) + self.msg = arg + + +class NoSuchFileOrDirectoryError(GlusterError): + """Exception for no such file or directory error.""" + def __init__(self, arg): + GlusterError.__init__(self, arg) + self.msg = arg + + +class AttributesDoNotMatchError(GlusterError): + """Attributes do not match exception.""" + def __init__(self, arg): + GlusterError.__init__(self, arg) + self.msg = arg + + +class LayoutIsNotCompleteError(GlusterError): + """Exception raised when the layout of a file is not complete.""" + def __init__(self, arg): + GlusterError.__init__(self, arg) + self.msg = arg + + +class LayoutIsNotBalancedError(GlusterError): + """Exception raised when the layout of a file is not balanced.""" + def __init__(self, arg): + GlusterError.__init__(self, arg) + self.msg = arg + + +class LayoutHasHolesError(GlusterError): + """Exception raised when the layout of a file has holes.""" + def __init__(self, arg): + GlusterError.__init__(self, arg) + self.msg = arg + + +class LayoutHasOverlapsError(GlusterError): + """Exception raised when the layout of a file has overlaps.""" + def __init__(self, arg): + GlusterError.__init__(self, arg) + self.msg = arg + + +class FileDoesNotExistOnHashedBricksError(GlusterError): + """Exception raised when a file/dir does not exist where it is hashed.""" + def __init__(self, arg): + GlusterError.__init__(self, arg) + self.msg = arg + + class ConfigError(Exception): ''' Custom exception thrown when there is an unrecoverable configuration error. |