[Checkins]
SVN: grok/branches/jw-simpler-skin-registration/src/grok/meta.py
Remove new grokker next to old grokker
Philipp von Weitershausen
philikon at philikon.de
Fri Aug 1 09:00:28 EDT 2008
Log message for revision 89142:
Remove new grokker next to old grokker
Changed:
U grok/branches/jw-simpler-skin-registration/src/grok/meta.py
-=-
Modified: grok/branches/jw-simpler-skin-registration/src/grok/meta.py
===================================================================
--- grok/branches/jw-simpler-skin-registration/src/grok/meta.py 2008-08-01 12:59:03 UTC (rev 89141)
+++ grok/branches/jw-simpler-skin-registration/src/grok/meta.py 2008-08-01 13:00:27 UTC (rev 89142)
@@ -635,6 +635,35 @@
return intids
+_skin_not_used = object()
+
+class SkinInterfaceDirectiveGrokker(martian.InstanceGrokker):
+ martian.component(InterfaceClass)
+
+ def grok(self, name, interface, module_info, config, **kw):
+ skin = grok.skin.bind(default=_skin_not_used).get(interface)
+ if skin is _skin_not_used:
+ # The skin directive is not actually used on the found interface.
+ return False
+
+ if not interface.extends(IBrowserRequest):
+ # For layers it is required to extend IBrowserRequest.
+ raise GrokError(
+ "The grok.skin() directive is used on interface %r. "
+ "However, %r does not subclass IBrowserRequest which is "
+ "required for interfaces that are used as layers and are to "
+ "be registered as a skin"
+ % (interface.__identifier__, interface.__identifier__),
+ interface
+ )
+ config.action(
+ discriminator=('utility', IBrowserSkinType, skin),
+ callable=zope.component.interface.provideInterface,
+ args=(skin, interface, IBrowserSkinType)
+ )
+ return True
+
+
class SkinGrokker(martian.ClassGrokker):
martian.component(grok.Skin)
martian.directive(grok.layer, default=IBrowserRequest)
@@ -757,31 +786,3 @@
return not has_render(factory)
templates.checkTemplates(module_info, factory, 'viewlet',
has_render, has_no_render)
-
-_skin_not_used = object()
-
-class SkinInterfaceDirectiveGrokker(martian.InstanceGrokker):
- martian.component(InterfaceClass)
-
- def grok(self, name, interface, module_info, config, **kw):
- skin = grok.skin.bind(default=_skin_not_used).get(interface)
- if skin is _skin_not_used:
- # The skin directive is not actually used on the found interface.
- return False
-
- if not interface.extends(IBrowserRequest):
- # For layers it is required to extend IBrowserRequest.
- raise GrokError(
- "The grok.skin() directive is used on interface %r. "
- "However, %r does not subclass IBrowserRequest which is "
- "required for interfaces that are used as layers and are to "
- "be registered as a skin"
- % (interface.__identifier__, interface.__identifier__),
- interface
- )
- config.action(
- discriminator=('utility', IBrowserSkinType, skin),
- callable=zope.component.interface.provideInterface,
- args=(skin, interface, IBrowserSkinType)
- )
- return True
More information about the Checkins
mailing list