aboutsummaryrefslogtreecommitdiff
path: root/src/ModuleManager.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/ModuleManager.py')
-rw-r--r--src/ModuleManager.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/ModuleManager.py b/src/ModuleManager.py
index 6b04f47c..f764b445 100644
--- a/src/ModuleManager.py
+++ b/src/ModuleManager.py
@@ -91,6 +91,18 @@ class ModuleManager(object):
def _import_name(self, name: str) -> str:
return "bitbot_%s" % name
+ def from_context(self, context: str) -> typing.Optional[LoadedModule]:
+ for module in self.modules.values():
+ if module.context == context:
+ return module
+ return None
+ def from_name(self, name: str) -> typing.Optional[LoadedModule]:
+ name_lower = name.lower()
+ for module in self.modules.values():
+ if module.name.lower() == name_lower:
+ return module
+ return None
+
def _get_magic(self, obj: typing.Any, magic: str, default: typing.Any
) -> typing.Any:
return getattr(obj, magic) if hasattr(obj, magic) else default