summaryrefslogtreecommitdiffstats
path: root/plugin_registry.py
diff options
context:
space:
mode:
authorJan Pokorný <jpokorny@redhat.com>2014-09-05 21:49:05 +0200
committerJan Pokorný <jpokorny@redhat.com>2014-09-05 21:49:05 +0200
commite4a10a0b632acacd10f438f8e5a99bd2acb2c1f0 (patch)
tree001f0ea303a525812ed2c48f560aba1cc0c60f0a /plugin_registry.py
parent0e9fa915bc52ca29e3493bf3c1e17b6a434dbe2c (diff)
downloadclufter-e4a10a0b632acacd10f438f8e5a99bd2acb2c1f0.tar.gz
clufter-e4a10a0b632acacd10f438f8e5a99bd2acb2c1f0.tar.xz
clufter-e4a10a0b632acacd10f438f8e5a99bd2acb2c1f0.zip
Make CLI interface work again after bfbb5c8(?)
Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
Diffstat (limited to 'plugin_registry.py')
-rw-r--r--plugin_registry.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/plugin_registry.py b/plugin_registry.py
index 286665a..e52be01 100644
--- a/plugin_registry.py
+++ b/plugin_registry.py
@@ -18,6 +18,7 @@ from .utils import args2tuple, \
args2sgpl, \
classproperty, \
filterdict_keep, \
+ filterdict_pop, \
hybridproperty, \
tuplist
from .utils_prog import ProtectedDict, cli_decor
@@ -243,24 +244,25 @@ class PluginManager(object):
ret[plugin] = registry.plugins[plugin]
except KeyError:
to_discover.add(plugin)
+ kwargs = filterdict_keep(kwargs, 'paths')
ret.update(registry.discover(fname_start=tuple(to_discover), **kwargs))
return ret # if tuplist(plugins) else ret[plugins]
@classmethod
def init_lookup(cls, plugin=(), *plugins, **kwargs):
plugins = args2tuple(*args2sgpl(plugin)) + plugins
- return cls(plugins=cls.lookup(plugins, **kwargs), path=None, **kwargs)
+ filterdict_pop(kwargs, 'paths')
+ return cls(plugins=cls.lookup(plugins, **kwargs), paths=None, **kwargs)
def __init__(self, *args, **kwargs):
registry = kwargs.pop('registry', None) or self._default_registry
assert (registry is not PluginRegistry,
"PluginManager subclass should refer to its custom registry")
self._registry = registry
- discover_kwargs = filterdict_keep(kwargs, 'paths')
- plugins = registry.discover(**discover_kwargs)
+ plugins = registry.discover(**filterdict_pop(kwargs, 'paths'))
plugins.update(kwargs.pop('plugins', {}))
self._plugins = ProtectedDict(
- self._init_plugins(plugins, *args, **discover_kwargs),
+ self._init_plugins(plugins, *args, **kwargs),
)
@classmethod