[KSS-checkins] r45130 - kukit/kss.pylons/trunk/kss/pylons
jvloothuis at codespeak.net
jvloothuis at codespeak.net
Mon Jul 16 20:10:00 CEST 2007
Author: jvloothuis
Date: Mon Jul 16 20:10:00 2007
New Revision: 45130
Added:
kukit/kss.pylons/trunk/kss/pylons/initialization.py
Modified:
kukit/kss.pylons/trunk/kss/pylons/__init__.py
kukit/kss.pylons/trunk/kss/pylons/middleware.py
Log:
Improved the plugin system. Plugins must now be loaded explicitly.
Modified: kukit/kss.pylons/trunk/kss/pylons/__init__.py
==============================================================================
--- kukit/kss.pylons/trunk/kss/pylons/__init__.py (original)
+++ kukit/kss.pylons/trunk/kss/pylons/__init__.py Mon Jul 16 20:10:00 2007
@@ -6,3 +6,15 @@
__path__ = extend_path(__path__, __name__)
from rendering import render_kss_response
+
+from initialization import initialize_javascript, initialize_command_set
+
+
+
+import os
+from kss.pylons.middleware import StaticJavascriptPlugin
+
+javascript_path = os.path.join(os.path.dirname(os.path.abspath(__file__)),
+ 'kukit')
+
+javascript_app = StaticJavascriptPlugin(javascript_path)
Added: kukit/kss.pylons/trunk/kss/pylons/initialization.py
==============================================================================
--- (empty file)
+++ kukit/kss.pylons/trunk/kss/pylons/initialization.py Mon Jul 16 20:10:00 2007
@@ -0,0 +1,12 @@
+from kss.pluginregistry import command_set_registry
+from pkg_resources import iter_entry_points
+
+def initialize_javascript(javascripts_app, *names):
+ for name in names:
+ for entry_point in iter_entry_points('kss.javascript', name):
+ javascripts_app.register(name, entry_point.load())
+
+def initialize_command_set(*names):
+ for name in names:
+ for entry_point in iter_entry_points('kss.commandset', name):
+ command_set_registry.register(name, entry_point.load())
Modified: kukit/kss.pylons/trunk/kss/pylons/middleware.py
==============================================================================
--- kukit/kss.pylons/trunk/kss/pylons/middleware.py (original)
+++ kukit/kss.pylons/trunk/kss/pylons/middleware.py Mon Jul 16 20:10:00 2007
@@ -1,4 +1,3 @@
-from pkg_resources import iter_entry_points
import os
from paste.urlparser import StaticURLParser
from paste import httpexceptions
@@ -7,12 +6,10 @@
class StaticKSSJavascripts(object):
def __init__(self):
- javascript_plugins = {}
- for entrypoint in iter_entry_points('kss.javascript'):
- plugin = entrypoint.load()
- javascript_plugins[entrypoint.name] = plugin
- self.javascript_plugins = javascript_plugins
+ self.javascript_plugins = {}
+ def register(self, name, app):
+ self.javascript_plugins[name] = app
def __call__(self, environ, start_response):
found = environ.get('PATH_INFO', '').startswith
More information about the Kukit-checkins
mailing list