[Checkins] SVN: AccessControl/branches/davisagli-permission-directive/src/AccessControl/ use the same syntax for assigning roles to a permission as in the GenericSetup rolemap importer

David Glick davidglick at onenw.org
Tue Aug 24 21:53:22 EDT 2010


Log message for revision 115930:
  use the same syntax for assigning roles to a permission as in the GenericSetup rolemap importer

Changed:
  U   AccessControl/branches/davisagli-permission-directive/src/AccessControl/meta.zcml
  U   AccessControl/branches/davisagli-permission-directive/src/AccessControl/security.py
  U   AccessControl/branches/davisagli-permission-directive/src/AccessControl/tests/testZCML.py

-=-
Modified: AccessControl/branches/davisagli-permission-directive/src/AccessControl/meta.zcml
===================================================================
--- AccessControl/branches/davisagli-permission-directive/src/AccessControl/meta.zcml	2010-08-25 00:37:42 UTC (rev 115929)
+++ AccessControl/branches/davisagli-permission-directive/src/AccessControl/meta.zcml	2010-08-25 01:53:21 UTC (rev 115930)
@@ -44,7 +44,7 @@
     <meta:directive
         name="role"
         usedIn="zope.security.zcml.IPermissionDirective"
-        schema="zope.interface.Interface"
+        schema=".security.IRoleDirective"
         handler=".security.RoleDirective"/>
 
   </meta:directives>

Modified: AccessControl/branches/davisagli-permission-directive/src/AccessControl/security.py
===================================================================
--- AccessControl/branches/davisagli-permission-directive/src/AccessControl/security.py	2010-08-25 00:37:42 UTC (rev 115929)
+++ AccessControl/branches/davisagli-permission-directive/src/AccessControl/security.py	2010-08-25 01:53:21 UTC (rev 115930)
@@ -21,6 +21,8 @@
 from zope.configuration.interfaces import IConfigurationContext
 from zope.interface import classProvides
 from zope.interface import implements
+from zope.interface import Interface
+from zope.schema import ASCIILine
 from zope.security.checker import CheckerPublic
 from zope.security.interfaces import IInteraction
 from zope.security.interfaces import ISecurityPolicy
@@ -192,8 +194,11 @@
         else:
             addPermission(zope2_permission)
 
-def RoleDirective(context):
-    role_name = str(context.info.text.strip())
+class IRoleDirective(Interface):
+    
+    name = ASCIILine()
+
+def RoleDirective(context, name):
     permission_directive = context.context
-    if role_name not in permission_directive.roles:
-        permission_directive.roles.append(role_name)
+    if name not in permission_directive.roles:
+        permission_directive.roles.append(name)

Modified: AccessControl/branches/davisagli-permission-directive/src/AccessControl/tests/testZCML.py
===================================================================
--- AccessControl/branches/davisagli-permission-directive/src/AccessControl/tests/testZCML.py	2010-08-25 00:37:42 UTC (rev 115929)
+++ AccessControl/branches/davisagli-permission-directive/src/AccessControl/tests/testZCML.py	2010-08-25 01:53:21 UTC (rev 115930)
@@ -418,7 +418,7 @@
       ...   <permission
       ...       id="AccessControl.tests.DummyPermission2"
       ...       title="AccessControl: Dummy permission 2">
-      ...       <role>Anonymous</role>
+      ...       <role name="Anonymous"/>
       ...   </permission>
       ...
       ... </configure>



More information about the checkins mailing list