[Zope3-checkins] SVN: Zope3/trunk/ Added a simple key reference
implementation for testing.
Stephan Richter
srichter at cosmos.phy.tufts.edu
Wed May 3 18:01:50 EDT 2006
Log message for revision 67937:
Added a simple key reference implementation for testing.
Changed:
U Zope3/trunk/doc/CHANGES.txt
A Zope3/trunk/src/zope/app/keyreference/testing.py
-=-
Modified: Zope3/trunk/doc/CHANGES.txt
===================================================================
--- Zope3/trunk/doc/CHANGES.txt 2006-05-03 19:49:06 UTC (rev 67936)
+++ Zope3/trunk/doc/CHANGES.txt 2006-05-03 22:01:49 UTC (rev 67937)
@@ -10,6 +10,9 @@
New features
+ - Added a simple Python id based implementation of IKeyReference for
+ testing.
+
- Updated Docutils to V 0.4.0
- Change the session credentials plugin to make it configurable
Added: Zope3/trunk/src/zope/app/keyreference/testing.py
===================================================================
--- Zope3/trunk/src/zope/app/keyreference/testing.py 2006-05-03 19:49:06 UTC (rev 67936)
+++ Zope3/trunk/src/zope/app/keyreference/testing.py 2006-05-03 22:01:49 UTC (rev 67937)
@@ -0,0 +1,43 @@
+##############################################################################
+#
+# Copyright (c) 2001, 2002 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""Testing components
+
+$Id$
+"""
+import zope.interface
+import zope.component
+import zope.app.keyreference.interfaces
+
+class SimpleKeyReference(object):
+ """An IReference for all objects. This implementation is *not* ZODB safe.
+ """
+ zope.component.adapts(zope.interface.Interface)
+ zope.interface.implements(zope.app.keyreference.interfaces.IKeyReference)
+
+ key_type_id = 'zope.app.keyreference.simple'
+
+ def __init__(self, object):
+ self.object = object
+
+ def __call__(self):
+ return self.object
+
+ def __hash__(self):
+ return hash(self.object)
+
+ def __cmp__(self, other):
+ if self.key_type_id == other.key_type_id:
+ return cmp(hash(self.object), hash(other))
+
+ return cmp(self.key_type_id, other.key_type_id)
Property changes on: Zope3/trunk/src/zope/app/keyreference/testing.py
___________________________________________________________________
Name: svn:keywords
+ Id
More information about the Zope3-Checkins
mailing list