[Checkins] SVN: grokcore.view/branches/janjaapdriessen-zope.fanstatic/src/grokcore/view/meta/directoryresource.py Replace zope.browserresource with zope.fanstatic resource.

Jan-Jaap Driessen jdriessen at thehealthagency.com
Fri Jan 7 10:31:55 EST 2011


Log message for revision 119442:
  Replace zope.browserresource with zope.fanstatic resource.

Changed:
  U   grokcore.view/branches/janjaapdriessen-zope.fanstatic/src/grokcore/view/meta/directoryresource.py

-=-
Modified: grokcore.view/branches/janjaapdriessen-zope.fanstatic/src/grokcore/view/meta/directoryresource.py
===================================================================
--- grokcore.view/branches/janjaapdriessen-zope.fanstatic/src/grokcore/view/meta/directoryresource.py	2011-01-07 15:05:09 UTC (rev 119441)
+++ grokcore.view/branches/janjaapdriessen-zope.fanstatic/src/grokcore/view/meta/directoryresource.py	2011-01-07 15:31:55 UTC (rev 119442)
@@ -83,6 +83,8 @@
         name = name or factory.module_info.dotted_name
         return _register(config, resource_path, name, layer)
 
+import fanstatic
+from zope.fanstatic.zcml import create_factory
 
 class StaticResourcesGrokker(martian.GlobalGrokker):
 
@@ -97,5 +99,19 @@
             return False
 
         name = module_info.dotted_name
-        layer = IDefaultBrowserLayer
-        return _register(config, resource_path, name, layer)
+
+        # Create a fanstatic library with the name and path.
+        library = fanstatic.Library(name, resource_path)
+
+        # Register the newly created library with fanstatic.
+        fanstatic.get_library_registry().add(library)
+
+        resource_factory = create_factory(library)
+        adapts = (IDefaultBrowserLayer,)
+        provides = interface.Interface
+        config.action(
+            discriminator=('adapter', adapts, provides, name),
+            callable=component.provideAdapter,
+            args=(resource_factory, adapts, provides, name),
+            )
+        return True



More information about the checkins mailing list