You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

15 lines
417 B

import inspect
import importlib
from .base import BaseProvider
def load_provider(name):
try:
mod = importlib.import_module('disco.bot.providers.' + name)
except ImportError:
mod = importlib.import_module(name)
for entry in filter(inspect.isclass, map(lambda i: getattr(mod, i), dir(mod))):
if issubclass(entry, BaseProvider) and entry != BaseProvider:
return entry