if self.has_method(name, 'description'):
return self.call_method(name, 'description')
+ def get_module(self, name):
+ if name not in self.loaded:
+ return None
+ return self.loaded[name]['module']
+
def get_plugin(self, name):
if name not in self.loaded:
return None
return self.loaded[name]['plugin']
+ def bind_variable(self, name, key, value):
+ if name not in self.loaded:
+ return None
+ return setattr(self.get_module(name), key, value)
+
def has_method(self, name, method):
if name not in self.loaded:
return None
logging.getLogger(name).setLevel(level)
def set_client(self, client):
- for name, data in self.loaded.items():
- data['module'].client = client
-
- def all(self):
for name in self.plugins():
- yield self.get_plugin(name)
+ self.bind_variable(name, 'client', client)
def on_ready(self):
for name in self.plugins():