diff options
Diffstat (limited to 'glustolibs-gluster-gd2/glustolibs/gluster/exceptions.py')
| -rw-r--r-- | glustolibs-gluster-gd2/glustolibs/gluster/exceptions.py | 127 | 
1 files changed, 127 insertions, 0 deletions
diff --git a/glustolibs-gluster-gd2/glustolibs/gluster/exceptions.py b/glustolibs-gluster-gd2/glustolibs/gluster/exceptions.py new file mode 100644 index 0000000..49db0c2 --- /dev/null +++ b/glustolibs-gluster-gd2/glustolibs/gluster/exceptions.py @@ -0,0 +1,127 @@ +#!/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. +    For example, a required configuration key is not found. +    ''' +    pass + + +class ExecutionError(Exception): +    ''' +    Custom exception thrown when a command executed by Glusto results in an +    unrecoverable error. +    For example, all hosts are not in peer state or a volume canot be setup. +    ''' +    pass + + +class ExecutionParseError(Exception): +    ''' +    Custom exception thrown when parsing a command executed by Glusto +    results in an unexpected error. +    For example, the output of a command when has to be parsed, can have three +    states. First, the output was as expected. Second, didn't get the expected +    output after the parsing result and Third, didn't get the expected result +    as the command itself failed. +    ''' +    pass + + +class GlusterApiInvalidInputs(Exception): +    """ +    Custom exception thrown when parsing invalid json inputs for the +    particular operation +    For example, invalid peer id specified +    """ +    pass + + +class GlusterApiError(Exception): +    """ +    Custom exception thrown when executing rest-api's results in an +    unrecoverable error. +    """ +    pass  | 
