E&S CVS Commit: PEAK - More cleanup/refactoring of URL handling and traversables/contexts:

pje at eby-sarna.com pje at eby-sarna.com
Sun Aug 3 12:10:01 EDT 2003

Module Name:	PEAK
Committed By:	pje
Date:		Sun Aug  3 16:09:52 UTC 2003

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

Log Message:
More cleanup/refactoring of URL handling and traversables/contexts:

- Most 'ITraversalContext' services are now available as attributes,
  rather than methods.

- Solidified the concept of a resource to include a fixed
  'resourcePath', and the ability of an interaction to determine a
  resource's URL.  Removed the need for traversables in general to
  know their location; this is a resource-specific matter.  It's now
  a cinch to turn a traversal context into the most-useful possible
  URL for the traversed-to item.

- Created a separate class for the root of a traversal, which makes it
  easier to start a traversal and allowed some conditionals in the
  TraversalContext class to be removed.

What we probably need to do next, is spruce up NOT_FOUND/NOT_ALLOWED
handling (which is rather broken right now).  Adding some tests for
resource  retrieval and URL computation would be a good idea too.

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

To generate a diff of this commit:
cvs rdiff -r1.16 -r1.17 PEAK/src/peak/web/interfaces.py
cvs rdiff -r1.15 -r1.16 PEAK/src/peak/web/places.py
cvs rdiff -r1.24 -r1.25 PEAK/src/peak/web/publish.py
cvs rdiff -r1.5 -r1.6 PEAK/src/peak/web/resources.py
cvs rdiff -r1.7 -r1.8 PEAK/src/peak/web/skins.py
cvs rdiff -r1.10 -r1.11 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