[Checkins] SVN: z3c.resourceinclude/trunk/ Fixed handling of
multiple include on same layer.
Malthe Borch
mborch at gmail.com
Wed Mar 5 18:48:50 EST 2008
Log message for revision 84487:
Fixed handling of multiple include on same layer.
Changed:
U z3c.resourceinclude/trunk/setup.py
U z3c.resourceinclude/trunk/z3c/resourceinclude/zcml.py
-=-
Modified: z3c.resourceinclude/trunk/setup.py
===================================================================
--- z3c.resourceinclude/trunk/setup.py 2008-03-05 23:37:11 UTC (rev 84486)
+++ z3c.resourceinclude/trunk/setup.py 2008-03-05 23:48:50 UTC (rev 84487)
@@ -1,7 +1,7 @@
from setuptools import setup, find_packages
import sys, os
-version = '0.2.1'
+version = '0.2.2'
setup(name='z3c.resourceinclude',
version=version,
Modified: z3c.resourceinclude/trunk/z3c/resourceinclude/zcml.py
===================================================================
--- z3c.resourceinclude/trunk/z3c/resourceinclude/zcml.py 2008-03-05 23:37:11 UTC (rev 84486)
+++ z3c.resourceinclude/trunk/z3c/resourceinclude/zcml.py 2008-03-05 23:48:50 UTC (rev 84487)
@@ -10,7 +10,7 @@
from manager import ResourceManager
from interfaces import IResourceManager
-counter = 0
+managers = {}
class IResourceIncludeDirective(interface.Interface):
include = Tokens(
@@ -40,7 +40,7 @@
include = [base+'/'+name for name in include]
_context.action(
- discriminator = ('resourceInclude', IBrowserRequest, layer),
+ discriminator = ('resourceInclude', IBrowserRequest, layer, "".join(include)),
callable = handler,
args = (include, layer, manager, _context.info),
)
@@ -48,15 +48,17 @@
def handler(include, layer, manager, info):
"""Set up includes."""
- global counter
-
+ global managers
+
if manager is None:
- manager = component.queryAdapter(layer, IResourceManager)
+ manager = managers.get(layer)
if manager is None:
- manager = ResourceManager()
- name = str(counter).rjust(3, '0') + ':' + layer.__module__ + '.' + layer.__name__
- counter += 1
+ managers[layer] = manager = ResourceManager()
+
+ count = len(managers)
+ name = str(count).rjust(3, '0') + ':' + layer.__module__ + '.' + layer.__name__
+
component.provideAdapter(
manager, (layer,), IResourceManager, name=name)
More information about the Checkins
mailing list