# Path: pypeman/conf.py
# NOT_FOUND = object()  # sentinel object
# class ConfigError(ImportError):
# class Settings():
#     def __init__(self, module_name=None):
#     def init_settings(self):
#     def __getattr__(self, name):
#     def __setattr__(self, name, value):


import logging
from importlib import import_module
from pypeman.conf import settings

It can also encourage development of plugins outside of pypeman, that can lateron
be merged into to pypeman.contrib.plugins or pypeman.plugins.
"""





logger = logging.getLogger(__name__)


class PluginManager():
    def __init__(self):
        self.imported = False
        self.plugin_classes = []  # list of plugin modules
        self.plugins = []
        self.loop = None

    def set_loop(self, loop):
        self.loop = loop
        for plugin in self.plugins:
            plugin.set_loop(loop)

    def import_plugins(self):
        """
        import plugin modules and store the classes in a list
        """
        if self.imported:
            return

# Path: pypeman/conf.py
# NOT_FOUND = object()  # sentinel object
# class ConfigError(ImportError):
# class Settings():
#     def __init__(self, module_name=None):
#     def init_settings(self):
#     def __getattr__(self, name):
#     def __setattr__(self, name, value):


# Path: pypeman/plugin_mgr.py
import logging
from importlib import import_module
from pypeman.conf import settings


It can also encourage development of plugins outside of pypeman, that can lateron
be merged into to pypeman.contrib.plugins or pypeman.plugins.
"""





logger = logging.getLogger(__name__)


class PluginManager():
    def __init__(self):
        self.imported = False
        self.plugin_classes = []  # list of plugin modules
        self.plugins = []
        self.loop = None

    def set_loop(self, loop):
        self.loop = loop
        for plugin in self.plugins:
            plugin.set_loop(loop)

    def import_plugins(self):
        """
        import plugin modules and store the classes in a list
        """
        if self.imported:
            return

        for plugin_name in settings.PLUGINS: