[Checkins] SVN: z3ext.security/trunk/ Query all IPrincipalPermissionMap adapter for context
Nikolay Kim
fafhrd at datacom.kz
Fri Jan 9 02:36:38 EST 2009
Log message for revision 94670:
Query all IPrincipalPermissionMap adapter for context
Changed:
U z3ext.security/trunk/CHANGES.txt
U z3ext.security/trunk/src/z3ext/security/securitypolicy.py
-=-
Modified: z3ext.security/trunk/CHANGES.txt
===================================================================
--- z3ext.security/trunk/CHANGES.txt 2009-01-09 05:27:41 UTC (rev 94669)
+++ z3ext.security/trunk/CHANGES.txt 2009-01-09 07:36:38 UTC (rev 94670)
@@ -2,6 +2,12 @@
CHANGES
=======
+1.2.2 (2009-01-09)
+------------------
+
+- Query all IPrincipalPermissionMap adapter for context
+
+
1.2.1 (2008-09-02)
------------------
Modified: z3ext.security/trunk/src/z3ext/security/securitypolicy.py
===================================================================
--- z3ext.security/trunk/src/z3ext/security/securitypolicy.py 2009-01-09 05:27:41 UTC (rev 94669)
+++ z3ext.security/trunk/src/z3ext/security/securitypolicy.py 2009-01-09 07:36:38 UTC (rev 94670)
@@ -36,6 +36,7 @@
prinper = None
roles_adapters = None
principal_roles_adapters = None
+ principal_permission_adapters = None
def __init__(self):
self.prin = {}
@@ -144,14 +145,15 @@
cache_prin_per[permission] = prinper
return prinper
- prinper = cache.prinper
- if prinper is None:
- cache.prinper = prinper = IPrincipalPermissionMap(parent, None)
+ # cache adaters
+ adapters = cache.principal_permission_adapters
+ if adapters is None:
+ adapters = tuple(getAdapters((parent,), IPrincipalPermissionMap))
+ cache.principal_permission_adapters = adapters
- if prinper is not None:
+ for name, prinper in adapters:
prinper = SettingAsBoolean[
- prinper.getSetting(permission, principal, None)
- ]
+ prinper.getSetting(permission, principal, None)]
if prinper is not None:
cache_prin_per[permission] = prinper
return prinper
More information about the Checkins
mailing list