[Zope-Checkins] CVS: Zope3/lib/python/Zope/Publisher/HTTP - HTTPRequest.py:1.1.2.28 http.zcml:1.1.2.5

Jim Fulton jim@zope.com
Fri, 7 Jun 2002 10:41:58 -0400


Update of /cvs-repository/Zope3/lib/python/Zope/Publisher/HTTP
In directory cvs.zope.org:/tmp/cvs-serv12187/lib/python/Zope/Publisher/HTTP

Modified Files:
      Tag: Zope-3x-branch
	HTTPRequest.py http.zcml 
Log Message:
Merging in Zope3InWonderland-branch, which implemented the following
proposals (see
http://dev.zope.org/Wikis/DevSite/Projects/ComponentArchitecture/OldProposals): 
- RenameAllowToRequire

- GroupClassRelatedDirectivesInClassDirective

- ViewInterfaceAndSimplification

- ConsistentUseOfSpacesAsDelimitersInZCMLAttributes

- TwoArgumentViewConstructors

- ImplementsInZCML

- SimpleViewCreationInZCML

- RemoveGetView

- ReplaceProtectWithAllow

- ViewMethodsAsViews

- MergeProtectionAndComponentDefinitions

There were also various security fixes resulting of better integration
of security with components.


=== Zope3/lib/python/Zope/Publisher/HTTP/HTTPRequest.py 1.1.2.27 => 1.1.2.28 ===
 
 from Zope.Publisher.BaseRequest import BaseRequest
-from Zope.Publisher.Browser.IBrowserPublisher import IBrowserPublisher 
 
 from HTTPResponse import HTTPResponse
 from IHTTPCredentials import IHTTPCredentials
@@ -418,7 +417,7 @@
             if level > len(names):
                 raise IndexError, level 
             names = names[:-level]
-        names = [quote(name, safe='/;') for name in names]
+        names = [quote(name, safe='/;:') for name in names]
 
         if path_only:
             if not names: return '/'
@@ -436,7 +435,7 @@
         else:
             names = self._app_names
             
-        names =  [quote(name, safe='/;') for name in names]
+        names =  [quote(name, safe='/;:') for name in names]
 
         if path_only:
             return names and ('/' + '/'.join(names)) or '/'


=== Zope3/lib/python/Zope/Publisher/HTTP/http.zcml 1.1.2.4 => 1.1.2.5 ===
 >
 
-  <security:protectClass class=".HTTPRequest."
-    interface=".IHTTPApplicationRequest."
-    permission_id="Zope.View" />
+  <content class=".HTTPRequest.">
+    <security:require
+        permission="Zope.View"
+        interface=".IHTTPApplicationRequest."/>
+  </content>
 
-  <security:protectClass class=".HTTPRequest.URLGetter"
-    permission_id="Zope.View" 
-    names="get, __getitem__, __str__" />
+  <content class=".HTTPRequest.URLGetter">
+    <security:require
+        permission="Zope.View" 
+        attributes="get __getitem__ __str__" />
+  </content>
 
 </zopeConfigure>