[Checkins] SVN: grokcore.security/trunk/src/grokcore/security/ Make previous change really work.
Sylvain Viollow
cvs-admin at zope.org
Wed May 2 09:36:01 UTC 2012
Log message for revision 125586:
Make previous change really work.
Changed:
U grokcore.security/trunk/src/grokcore/security/__init__.py
U grokcore.security/trunk/src/grokcore/security/components.py
U grokcore.security/trunk/src/grokcore/security/interfaces.py
U grokcore.security/trunk/src/grokcore/security/meta/role.py
-=-
Modified: grokcore.security/trunk/src/grokcore/security/__init__.py
===================================================================
--- grokcore.security/trunk/src/grokcore/security/__init__.py 2012-05-02 09:31:21 UTC (rev 125585)
+++ grokcore.security/trunk/src/grokcore/security/__init__.py 2012-05-02 09:35:58 UTC (rev 125586)
@@ -15,7 +15,7 @@
"""
from grokcore.component import *
-from grokcore.security.components import Permission, Role
+from grokcore.security.components import Permission
from grokcore.security.components import Public
from grokcore.security.directive import require, permissions
@@ -24,5 +24,8 @@
import grokcore.security.testing
# Only export public API
-from grokcore.security.interfaces import IGrokcoreSecurityAPI
+from grokcore.security.interfaces import IGrokcoreSecurityAPI, HAVE_ROLE
+if HAVE_ROLE:
+ from grokcore.security.components import Role
+
__all__ = list(IGrokcoreSecurityAPI)
Modified: grokcore.security/trunk/src/grokcore/security/components.py
===================================================================
--- grokcore.security/trunk/src/grokcore/security/components.py 2012-05-02 09:31:21 UTC (rev 125585)
+++ grokcore.security/trunk/src/grokcore/security/components.py 2012-05-02 09:35:58 UTC (rev 125586)
@@ -14,26 +14,18 @@
"""Grok components"""
from zope.security.permission import Permission
+from grokcore.security.interfaces import HAVE_ROLE
-def api(name):
- from zope.dottedname.resolve import resolve
- from zope.interface import Interface
- try:
- return True, resolve(name)
- except ImportError:
- return False, Interface
-
-
class Permission(Permission):
pass
Public = 'zope.Public'
-HAVE_ROLE, securitypolicy_Role = api('zope.securitypolicy.role.Role')
-
if HAVE_ROLE:
+ from zope.securitypolicy.role import Role as securitypolicy_Role
+
class Role(securitypolicy_Role):
"""Base class for roles in Grok applications.
Modified: grokcore.security/trunk/src/grokcore/security/interfaces.py
===================================================================
--- grokcore.security/trunk/src/grokcore/security/interfaces.py 2012-05-02 09:31:21 UTC (rev 125585)
+++ grokcore.security/trunk/src/grokcore/security/interfaces.py 2012-05-02 09:35:58 UTC (rev 125586)
@@ -15,10 +15,24 @@
"""
from zope.interface import Interface, Attribute
+def api(name):
+ from zope.dottedname.resolve import resolve
+ from zope.interface import Interface
+
+ try:
+ return True, resolve(name)
+ except ImportError:
+ return False, Interface
+
+
+HAVE_ROLE, IRole = api('zope.securitypolicy.interfaces.IRole')
+
+
class IBaseClasses(Interface):
Permission = Attribute("Base class for permissions.")
- Role = Attribute("Base class for roles.")
+ if HAVE_ROLE:
+ Role = Attribute("Base class for roles.")
class IDirectives(Interface):
Modified: grokcore.security/trunk/src/grokcore/security/meta/role.py
===================================================================
--- grokcore.security/trunk/src/grokcore/security/meta/role.py 2012-05-02 09:31:21 UTC (rev 125585)
+++ grokcore.security/trunk/src/grokcore/security/meta/role.py 2012-05-02 09:35:58 UTC (rev 125586)
@@ -14,7 +14,7 @@
"""Grokkers for security-related components."""
-from grokcore.security.components import HAVE_ROLE
+from grokcore.security.interfaces import HAVE_ROLE
if HAVE_ROLE:
import martian
More information about the checkins
mailing list