diff options
Diffstat (limited to 'src/conventionalrp/plugins')
| -rw-r--r-- | src/conventionalrp/plugins/__init__.py | 2 | ||||
| -rw-r--r-- | src/conventionalrp/plugins/plugin_manager.py | 19 |
2 files changed, 20 insertions, 1 deletions
diff --git a/src/conventionalrp/plugins/__init__.py b/src/conventionalrp/plugins/__init__.py index 9f1a11b..a7e5268 100644 --- a/src/conventionalrp/plugins/__init__.py +++ b/src/conventionalrp/plugins/__init__.py @@ -1,4 +1,4 @@ # FILE: /trpg-log-processor/trpg-log-processor/src/conventionalrp/plugins/__init__.py """ This file initializes the plugins module. -"""
\ No newline at end of file +""" diff --git a/src/conventionalrp/plugins/plugin_manager.py b/src/conventionalrp/plugins/plugin_manager.py index e69de29..0d49a9c 100644 --- a/src/conventionalrp/plugins/plugin_manager.py +++ b/src/conventionalrp/plugins/plugin_manager.py @@ -0,0 +1,19 @@ +import os +import importlib + + +class PluginManager: + def __init__(self, plugin_dir: str): + self.plugin_dir = plugin_dir + self.plugins = [] + + def load_plugins(self): + for plugin in os.listdir(self.plugin_dir): + if plugin.endswith(".py"): + plugin_name = plugin.split(".")[0] + module = importlib.import_module(f"{self.plugin_dir}.{plugin_name}") + self.plugins.append(module) + + def run_plugins(self): + for plugin in self.plugins: + plugin.run() |
