summaryrefslogtreecommitdiff
path: root/stevedore/named.py
diff options
context:
space:
mode:
authorDoug Hellmann <doug.hellmann@dreamhost.com>2012-06-19 15:59:07 -0400
committerDoug Hellmann <doug.hellmann@dreamhost.com>2012-06-19 15:59:07 -0400
commit6af087440ba4fce38096b87be9edab0252f4d2d8 (patch)
tree60d40ec29a2f74ec760d46543eb2ed9a1bdd624f /stevedore/named.py
parentabeae9ef53930e9e05b8712e42921efbb682b5a3 (diff)
downloadstevedore-6af087440ba4fce38096b87be9edab0252f4d2d8.tar.gz
break up monolithic module
Diffstat (limited to 'stevedore/named.py')
-rw-r--r--stevedore/named.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/stevedore/named.py b/stevedore/named.py
new file mode 100644
index 0000000..cfa5a2d
--- /dev/null
+++ b/stevedore/named.py
@@ -0,0 +1,20 @@
+from .enabled import EnabledExtensionManager
+
+
+class NamedExtensionManager(EnabledExtensionManager):
+ """ExtensionManager that only loads the named extensions.
+
+ This is useful for explictly enabling extensions in a
+ configuration file, for example.
+ """
+
+ def __init__(self, namespace, names=[],
+ invoke_on_load=False, invoke_args=(), invoke_kwds={}):
+ def check(ep):
+ return ep.name in names
+ super(NamedExtensionManager, self).__init__(namespace,
+ check,
+ invoke_on_load=invoke_on_load,
+ invoke_args=invoke_args,
+ invoke_kwds=invoke_kwds,
+ )