-----Original Message----- From: Evan Simpson [mailto:evan@4-am.com]
On another note, the capability described above is actually quite similar to the __before_traverse__ behavior which SiteAccess hacks into the traversal machinery. An Access Rule can look ahead one or more path elements, and then easily manipulate, add, or remove them. Also, multiple objects can hook into the same folder's __b_t__ chain without colliding and with controllable invocation order, which is part of why I invented it rather than overriding __bobo_traverse__. Any chance that DC could incorporate it (the __before_traverse__, I mean)? It's quite clean and well tested at this point, and I could stop nervously examining each release of Zope to see if it will break SiteAccess.
The reason why we didn't roll it in is that we didn't want Yet Another Hook adding a per-traveral cost, and we could impliment SiteObjects without them. Whether or not we can impliment all your other features without is another question. What feature of SiteAccess uses the before hook? We were able to emulate the virtualhosting behavior with code silimar to yours (I stole some of yours actually) without havign to define the before hook. -Michel