diff options
Diffstat (limited to 'src/IRCBot.py')
| -rw-r--r-- | src/IRCBot.py | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/IRCBot.py b/src/IRCBot.py index 8eb1873e..fbc74ad9 100644 --- a/src/IRCBot.py +++ b/src/IRCBot.py @@ -149,22 +149,27 @@ class Bot(object): if throw: raise BitBotPanic() - def load_modules(self, safe: bool=False - ) -> typing.Tuple[typing.List[str], typing.List[str]]: - db_blacklist = set(self.get_setting("module-blacklist", [])) + def _module_lists(self): db_whitelist = set(self.get_setting("module-whitelist", [])) + db_blacklist = set(self.get_setting("module-blacklist", [])) - conf_blacklist = self.config.get("module-blacklist", "").split(",") conf_whitelist = self.config.get("module-whitelist", "").split(",") + conf_blacklist = self.config.get("module-blacklist", "").split(",") - conf_blacklist = set(filter(None, conf_blacklist)) conf_whitelist = set(filter(None, conf_whitelist)) + conf_blacklist = set(filter(None, conf_blacklist)) - blacklist = db_blacklist|conf_blacklist - whitelist = db_whitelist|conf_whitelist + return (db_whitelist|conf_whitelist, db_blacklist|conf_blacklist) + def load_modules(self, safe: bool=False + ) -> typing.Tuple[typing.List[str], typing.List[str]]: + whitelist, blacklist = self._module_lists() return self.modules.load_modules(self, whitelist=whitelist, blacklist=blacklist, safe=safe) + def try_reload_modules(self) -> ModuleManager.TryReloadResult: + whitelist, blacklist = self._module_lists() + return self.modules.try_reload_modules(self, whitelist=whitelist, + blacklist=blacklist) def add_server(self, server_id: int, connect: bool = True, connection_param_args: typing.Dict[str, str]={} |
