E&S CVS Commit: PEAK - Factor out some traversable responsibilities into a new interface:

pje at eby-sarna.com pje at eby-sarna.com
Sat Aug 2 19:00:01 EDT 2003

Module Name:	PEAK
Committed By:	pje
Date:		Sat Aug  2 22:59:34 UTC 2003

Modified Files:
	PEAK/src/peak/web: interfaces.py places.py publish.py resources.py
	    skins.py templates.py

Log Message:
Factor out some traversable responsibilities into a new interface:
ITraversalContext.  Now, the interaction deals only with traversal
contexts, and the traversal context is responsible for most of the
housekeeping associated with traversal and rendering.  Traversables no
longer need to be bound to an interaction-based context, or deal with
adapting objects found in traversal.  This also simplifies some of the
traversal mechanics for templates as well.  Pages' 'render()' method now
takes a traversal context instead of an interaction.  The main areas of
confusion remaining now are with respect to URL computation and resource
bindings.  Some of the other interfaces and implementations still need
review and possible tuning.  It may be that there is a lot of unnecessary
overhead still being managed by traversables to keep track of a URL or
context information that isn't really needed anymore.

To view diffs of this commit, you can use the following URL(s):

To generate a diff of this commit:
cvs rdiff -r1.15 -r1.16 PEAK/src/peak/web/interfaces.py
cvs rdiff -r1.14 -r1.15 PEAK/src/peak/web/places.py
cvs rdiff -r1.23 -r1.24 PEAK/src/peak/web/publish.py
cvs rdiff -r1.4 -r1.5 PEAK/src/peak/web/resources.py
cvs rdiff -r1.6 -r1.7 PEAK/src/peak/web/skins.py
cvs rdiff -r1.9 -r1.10 PEAK/src/peak/web/templates.py

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

More information about the source-changes mailing list