[Zope3-checkins] CVS: Zope3/src/zope/security - management.py:1.3
Jim Fulton
jim@zope.com
Fri, 18 Apr 2003 18:12:36 -0400
Update of /cvs-repository/Zope3/src/zope/security
In directory cvs.zope.org:/tmp/cvs-serv8556/src/zope/security
Modified Files:
management.py
Log Message:
In prepration for the upcoming interface changes, I added some
new functions for making interface assertions on instances.
Rather than:
class C:
__class_implements__ = I1, I2
use:
class C:
classProvides(I1, I2)
rather than:
__implements__ = I1, I2
use:
moduleProvides(I1, I2)
rather than:
someinstance.__implements__ = I1, I2
use:
directlyProvides(I1, I2)
Note that interface assertions on persistent objects should be aboided
since the internal representation will change.
Continue to make assertions about the interfaces that class instances
implement the same way:
class C:
__implements__ = I1, I2
I also modified the core software to use the new spellings.
=== Zope3/src/zope/security/management.py 1.2 => 1.3 ===
--- Zope3/src/zope/security/management.py:1.2 Tue Feb 25 05:23:24 2003
+++ Zope3/src/zope/security/management.py Fri Apr 18 18:12:34 2003
@@ -21,12 +21,13 @@
# zope.security.manager needs it
system_user = object()
+from zope.interface import moduleProvides
from zope.security.interfaces import ISecurityManagement, ISecurityManagementSetup
from zope.security.manager import SecurityManager
from zope.security.manager import setSecurityPolicy as _setSecurityPolicy
from zope.security.context import SecurityContext
-__implements__ = (ISecurityManagement, ISecurityManagementSetup)
+moduleProvides(ISecurityManagement, ISecurityManagementSetup)
try:
import thread