PluginManager/PluginExceptions.py

Sun, 23 Jun 2013 13:12:38 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 23 Jun 2013 13:12:38 +0200
changeset 2736
86cd4d14b58e
parent 2302
f29e9405c851
child 2525
8b507a9a2d40
child 2992
dbdf27746da5
child 3163
9f50365a0870
permissions
-rw-r--r--

Added a wizard for the Qt5 QRegularExpression class.

# -*- coding: utf-8 -*-

# Copyright (c) 2007 - 2013 Detlev Offenbach <detlev@die-offenbachs.de>
#

"""
Module implementing the exceptions raised by the plugin system.
"""

from PyQt4.QtGui import QApplication


class PluginError(Exception):
    """
    Class defining a special error for the plugin classes.
    """
    def __init__(self):
        """
        Constructor
        """
        self._errorMessage = \
            QApplication.translate("PluginError", "Unspecific plugin error.")
        
    def __repr__(self):
        """
        Private method returning a representation of the exception.
        
        @return string representing the error message
        """
        return str(self._errorMessage)
        
    def __str__(self):
        """
        Private method returning a string representation of the exception.
        
        @return string representing the error message
        """
        return str(self._errorMessage)


class PluginPathError(PluginError):
    """
    Class defining an error raised, when the plugin paths were not found and
    could not be created.
    """
    def __init__(self, msg=None):
        """
        Constructor
        
        @param msg message to be used by the exception (string)
        """
        if msg:
            self._errorMessage = msg
        else:
            self._errorMessage = \
                QApplication.translate("PluginError",
                    "Plugin paths not found or not creatable.")


class PluginModulesError(PluginError):
    """
    Class defining an error raised, when no plugin modules were found.
    """
    def __init__(self):
        """
        Constructor
        """
        self._errorMessage = \
            QApplication.translate("PluginError", "No plugin modules found.")


class PluginLoadError(PluginError):
    """
    Class defining an error raised, when there was an error during plugin loading.
    """
    def __init__(self, name):
        """
        Constructor
        
        @param name name of the plugin module (string)
        """
        self._errorMessage = \
            QApplication.translate("PluginError", "Error loading plugin module: {0}")\
                        .format(name)


class PluginActivationError(PluginError):
    """
    Class defining an error raised, when there was an error during plugin activation.
    """
    def __init__(self, name):
        """
        Constructor
        
        @param name name of the plugin module (string)
        """
        self._errorMessage = \
            QApplication.translate("PluginError", "Error activating plugin module: {0}")\
                        .format(name)


class PluginModuleFormatError(PluginError):
    """
    Class defining an error raised, when the plugin module is invalid.
    """
    def __init__(self, name, missing):
        """
        Constructor
        
        @param name name of the plugin module (string)
        @param missing description of the missing element (string)
        """
        self._errorMessage = \
            QApplication.translate("PluginError",
                                   "The plugin module {0} is missing {1}.")\
                        .format(name, missing)


class PluginClassFormatError(PluginError):
    """
    Class defining an error raised, when the plugin module's class is invalid.
    """
    def __init__(self, name, class_, missing):
        """
        Constructor
        
        @param name name of the plugin module (string)
        @param class_ name of the class not satisfying the requirements (string)
        @param missing description of the missing element (string)
        """
        self._errorMessage = \
            QApplication.translate("PluginError",
                                   "The plugin class {0} of module {1} is missing {2}.")\
                        .format(class_, name, missing)

eric ide

mercurial