| 1234567891011121314151617 |
- from engine.log import debug
- from engine.plugins.base import BasePlugin
- import inspect
- class LoadablePlugin:
- def __init__(self, package):
- self.name = package.__name__
- self._class = None
- for name, _class in inspect.getmembers(package):
- if inspect.isclass(_class) and issubclass(_class, BasePlugin) and _class is not BasePlugin:
- debug('Loaded {}=>{}'.format(self.name, _class.__name__))
- self._class = _class
- continue
- def get_class(self):
- return self._class
|