def __init__(self): threading.Thread.__init__(self) init_keyval_storage(conf.keyval_db) _Database.__init__(self) self.dbus_service = None self.values={} self.protocols=[] self.setDaemon(True) # Initialize and activate all plugins of 'Protocols' category global manager manager = PluginManager(categories_filter={ "Protocols": protocols}) manager.setPluginPlaces(conf.plugin_dirs) manager.collectPlugins() activated_plugins = [] failed_plugins= [] plugins = {plugin.name : plugin for plugin in manager.getPluginsOfCategory('Protocols')} for plugin_name in conf.enabled_plugins: if plugin_name in plugins: try: plugin = plugins[plugin_name] plugin.plugin_object.activate(conf.plugin_conf[plugin.name], globals(), self) self.protocols.append(plugin) activated_plugins.append(plugin.name) except Exception as e: failed_plugins.append(plugin.name) if conf.command == 'debug': raise else: logger.info('%s plugin error: %s'%(plugin_name, str(e)) ) if activated_plugins: logger.info('Activated plugins: %s'%', '.join(activated_plugins)) if failed_plugins: logger.info('Failed to activate plugins: %s'%', '.join(failed_plugins)) self.start()
def __init__(self): class getset: def __init__(self, item, obj): self.item = item self.obj = obj def getItem(self): return self.obj.getItem(self.item) def setItem(self, value): return self.obj.setItem(self.item, value) self.items={} self.protocols=[] # Initialize and activate all plugins of 'Protocols' category global manager manager = PluginManager(categories_filter={ "Protocols": protocols}) manager.setPluginPlaces([conf.plugin_dir]) manager.collectPlugins() for plugin in manager.getPluginsOfCategory('Protocols'): if plugin.name in conf.enabled_plugins: try: plugin.plugin_object.activate(conf.plugin_conf[plugin.name], globals()) self.protocols.append(plugin) logger.info("activated plugin %s"%plugin.name) for item in plugin.plugin_object.getDataBase(): self.items[item] = getset(item, plugin.plugin_object) except Exception as e: print e logger.info('Plugin %s init failed'%plugin.name)
def __init__(self): class getset: def __init__(self, item, obj): self.item = item self.obj = obj def getItem(self): return self.obj.getItem(self.item) def setItem(self, value): return self.obj.setItem(self.item, value) threading.Thread.__init__(self) self.dbus_service = None self.items={} self.values={} self.protocols=[] self.setDaemon(True) # Initialize and activate all plugins of 'Protocols' category global manager manager = PluginManager(categories_filter={ "Protocols": protocols}) manager.setPluginPlaces([conf.plugin_dir]) manager.collectPlugins() activated_plugins = [] failed_plugins= [] plugins = {plugin.name : plugin for plugin in manager.getPluginsOfCategory('Protocols')} for plugin_name in conf.enabled_plugins: if plugin_name in plugins: try: plugin = plugins[plugin_name] plugin.plugin_object.activate(conf.plugin_conf[plugin.name], globals()) self.protocols.append(plugin) for item in plugin.plugin_object.getDataBase(): self.items[item] = getset(item, plugin.plugin_object) activated_plugins.append(plugin.name) except Exception as e: #print str(e), plugin.name failed_plugins.append(plugin.name) logger.debug('Plugin error:%s'%(traceback.format_exc(sys.exc_info()[1]))) if activated_plugins: logger.info('Activated plugins: %s'%', '.join(activated_plugins)) if failed_plugins: logger.info('Failed to activate plugins: %s'%', '.join(failed_plugins)) self.start()
def __init__(self): threading.Thread.__init__(self) init_keyval_storage(conf.keyval_db) _Database.__init__(self) self.dbus_service = None self.values = {} self.protocols = [] self.setDaemon(True) # Initialize and activate all plugins of 'Protocols' category global manager manager = PluginManager(categories_filter={"Protocols": protocols}) manager.setPluginPlaces(conf.plugin_dirs) manager.collectPlugins() activated_plugins = [] failed_plugins = [] plugins = { plugin.name: plugin for plugin in manager.getPluginsOfCategory('Protocols') } for plugin_name in conf.enabled_plugins: if plugin_name in plugins: try: plugin = plugins[plugin_name] plugin.plugin_object.activate( conf.plugin_conf[plugin.name], globals(), self) self.protocols.append(plugin) activated_plugins.append(plugin.name) except Exception as e: failed_plugins.append(plugin.name) if conf.command == 'debug': raise else: logger.info('%s plugin error: %s' % (plugin_name, str(e))) if activated_plugins: logger.info('Activated plugins: %s' % ', '.join(activated_plugins)) if failed_plugins: logger.info('Failed to activate plugins: %s' % ', '.join(failed_plugins)) self.start()