[Checkins] SVN: megrok.feeds/trunk/src/megrok/feeds/ Made feed views always use the context IFeedable.

Brandon Rhodes brandon at rhodesmill.org
Sat Jul 19 16:24:21 EDT 2008


Log message for revision 88616:
  Made feed views always use the context IFeedable.
  

Changed:
  U   megrok.feeds/trunk/src/megrok/feeds/components.py
  U   megrok.feeds/trunk/src/megrok/feeds/ftests/atom/atom.py
  U   megrok.feeds/trunk/src/megrok/feeds/meta.py

-=-
Modified: megrok.feeds/trunk/src/megrok/feeds/components.py
===================================================================
--- megrok.feeds/trunk/src/megrok/feeds/components.py	2008-07-19 20:18:53 UTC (rev 88615)
+++ megrok.feeds/trunk/src/megrok/feeds/components.py	2008-07-19 20:24:21 UTC (rev 88616)
@@ -2,7 +2,10 @@
 """
 import vice.outbound.core
 from vice.outbound.core.browser.feed import Atom_1_0_FeedView
+from zope.interface import Interface
 
+class IFeedable(Interface):
+    pass # marker interface
 
 class AtomFeed(Atom_1_0_FeedView):
     pass

Modified: megrok.feeds/trunk/src/megrok/feeds/ftests/atom/atom.py
===================================================================
--- megrok.feeds/trunk/src/megrok/feeds/ftests/atom/atom.py	2008-07-19 20:18:53 UTC (rev 88615)
+++ megrok.feeds/trunk/src/megrok/feeds/ftests/atom/atom.py	2008-07-19 20:24:21 UTC (rev 88616)
@@ -49,9 +49,9 @@
 from vice.outbound.core.interfaces import IFeed, IFeedItem
 
 from zope.interface import Interface
-class IFeedable(Interface):
-    pass # marker interface
 
+from megrok.feeds.components import IFeedable
+
 # need three things:
 # (1) we need to create an adapter from MammothBox to IFeed
 # (2) we need to mark MammothBox as IFeedable
@@ -92,16 +92,10 @@
         while False:
             yield None
 
-#class AtomFormat(Atom_1_0_FeedView): #, grok.View):
-#    grok.context(IFeedable)
-    #@grok.require('zope.View')
-    #def __call__(self, *args, **kw):
-    #    super(self, AtomFormat).__call__(self, *args, **kw)
-
 from megrok.feeds.components import AtomFeed
 
 class Atom(AtomFeed):
-    grok.context(IFeedable)
+    pass #grok.context(IFeedable)
 
 #class AtomFormat(Atom_1_0_FeedView): #, grok.View):
 #    grok.context(IFeedable)

Modified: megrok.feeds/trunk/src/megrok/feeds/meta.py
===================================================================
--- megrok.feeds/trunk/src/megrok/feeds/meta.py	2008-07-19 20:18:53 UTC (rev 88615)
+++ megrok.feeds/trunk/src/megrok/feeds/meta.py	2008-07-19 20:24:21 UTC (rev 88616)
@@ -12,7 +12,6 @@
 
 class AtomFeedGrokker(martian.ClassGrokker):
     martian.component(components.AtomFeed)
-    martian.directive(grok.context)
     martian.directive(grok.layer, default=IDefaultBrowserLayer)
     martian.directive(grok.name, get_default=default_view_name)
     martian.directive(grok.require, name='permission')
@@ -23,7 +22,7 @@
         factory.module_info = module_info
         return super(AtomFeedGrokker, self).grok(name, factory, module_info, **kw)
 
-    def execute(self, factory, config, context, layer, name, permission, **kw):
+    def execute(self, factory, config, layer, name, permission, **kw):
         # safety belt: make sure that the programmer didn't use
         # @grok.require on any of the view's methods.
         methods = util.methods_from_class(factory)
@@ -36,7 +35,7 @@
 
         # __view_name__ is needed to support IAbsoluteURL on views
         factory.__view_name__ = name
-        adapts = (context, layer)
+        adapts = (components.IFeedable, layer)
 
         config.action(
             discriminator=('adapter', adapts, interface.Interface, name),



More information about the Checkins mailing list