[Repoze-checkins] r859 - repoze.obob/trunk/doc

Chris McDonough chrism at agendaless.com
Sun Mar 23 22:09:38 EDT 2008


Author: Chris McDonough <chrism at agendaless.com>
Date: Sun Mar 23 22:09:37 2008
New Revision: 859

Log:
Freshen intro docs.


Modified:
   repoze.obob/trunk/doc/intro.txt

Modified: repoze.obob/trunk/doc/intro.txt
==============================================================================
--- repoze.obob/trunk/doc/intro.txt	(original)
+++ repoze.obob/trunk/doc/intro.txt	Sun Mar 23 22:09:37 2008
@@ -22,17 +22,16 @@
       calling the published object, into appropriate WSGI output.
 
   The publisher is *not* responsible for the following tasks, which
-  belong to WSGI / repoze "middleware" components:
+  belong to WSGI "middleware" components:
 
     - setting up any transaction;
 
-    - opening any database connections;
+    - committing or aborting a transaction;
 
     - retrying failed / conflicting requests;
 
     - converting Python exceptions into HTTP response codes.
 
-
 Configuring obob
 
   The obob instance can be configured either through paste or through
@@ -50,7 +49,9 @@
       for graph traversal.
 
       The default implementation returns an instance of
-      'repoze.obob.publisher.DefaultHelper'.
+      'repoze.obob.publisher.DefaultHelper'.  It is presumed that
+      specific applications will use their own helper implementations
+      (e.g. repoze.zope2's Zope2ObobHelper).
 
     'get_root' -- optional; called at the beginning of processing.
 
@@ -58,22 +59,20 @@
 
         get_root(helper) -> root
 
-      E.g., in the Zope2 stack, return the root ZODB object, wrapped in
-      the request.
+      E.g., in the Zope2 stack, return the ZODB root object.
 
       'helper' is the traversal policy helper object, which will normally
       wrap the environment.
 
-      The default implementation returns a mapping objecct containing 
-      keys defined in the configuration using an 'obob.' prefix.  If called,
-      this object returns a simple HTML list of links to the dispatchable
-      names.
+      The default implementation returns a mapping object containing
+      keys defined in the configuration using an 'obob.' prefix.  If
+      called, this object returns a simple HTML list of links to the
+      dispatchable names.
 
       The returned object will be used as the root of the traversal graph.
       If needed, create / check out database connections, etc., based on
       request, as well as initializing any per-request policy settings.
 
-
 Supplying a different publication helper
 
   The default helper (repoze.obob.publisher.DefaultHelper) provides
@@ -88,22 +87,23 @@
 
         setup()
 
-      E.g. in the Zope2 stack, call 'newInteraction'??
+      E.g. in the Zope2 stack, call 'newInteraction',
+      'setDefaultSkin', create a request, create a stack of names from
+      'PATH_INFO', etc.
 
       The default implementation is a no-op.
 
-    'path_elements' -- computes the list of path elements to be
-      traversed
+    'next_name' -- returns the next name in the stack of path elements
+      to be traversed
       
       Contract::
 
-        path_elements() -> [elements]
+        next_name() -> name
 
-      E.g., in the Zope2`stack, break the 'PATH_INFO' environment value
-      into elements.
-      
-      The default implementaition splits that key on '/', and returns all
-      non-empty elements.
+      E.g., in the Zope2`stack, use the stack of names from the
+      'PATH_INFO' environment value into elements, and form a stack.
+      Each call to next_name() pops a path element from the stack and
+      returns it.
 
     'before_traverse' -- called before traversing each edge.
       
@@ -111,8 +111,7 @@
 
         before_traverse(current, name) # raise to veto
 
-      E.g. in the Zope2 stack, note location of most-recently-seen
-      '__allow_groups__' user folder.
+      E.g. in the Zope2 stack, call '__before_publishing_traverse__'.
 
       The default implementation is a no-op.
 
@@ -132,7 +131,7 @@
      
       Contract::
 
-        before_traverse(published) # raise to veto
+        before_invoke(published) # raise to veto
 
       E.g., in the Zope2 stack, ask the security machinery to authorize
       access to the published object.
@@ -168,7 +167,8 @@
 
         teardown()
 
-      E.g., in the Zope2 stack, call 'endInteraction?
+      E.g., in the Zope2 stack, call 'endInteraction' and close the
+      request.
 
       The default implementation is a no-op.
 


More information about the Repoze-checkins mailing list