[Zope-CVS] CVS: Products/AdaptableStorage/mapper/interfaces - IObjectSerializer.py:1.4

Shane Hathaway shane@zope.com
Fri, 21 Feb 2003 11:08:40 -0500


Update of /cvs-repository/Products/AdaptableStorage/mapper/interfaces
In directory cvs.zope.org:/tmp/cvs-serv5192/mapper/interfaces

Modified Files:
	IObjectSerializer.py 
Log Message:
- Fixed storage and loading of ZClass instances.
IObjectSerializer.createEmptyInstance() now accepts an optional
class_loader.  ASConnection provides a class loader that can load
ZClasses.

- Simplified configuration of mappers using "base" mappers.  Derived
mappers and gateways start with the configuration of the base mapper.

- Enhanced the configurability of ObjectGateways and
ObjectSerializers: there are now removeGateway() and removeAspect()
methods.


=== Products/AdaptableStorage/mapper/interfaces/IObjectSerializer.py 1.3 => 1.4 ===
--- Products/AdaptableStorage/mapper/interfaces/IObjectSerializer.py:1.3	Fri Feb 14 12:41:36 2003
+++ Products/AdaptableStorage/mapper/interfaces/IObjectSerializer.py	Fri Feb 21 11:08:09 2003
@@ -31,7 +31,7 @@
     and schema of its constituent IAspectSerializers.
     """
 
-    def createEmptyInstance(classification=None):
+    def createEmptyInstance(classification=None, class_factory=None):
         """Returns a new instance.
 
         If this serializer works with instances of only one class,
@@ -39,5 +39,10 @@
         classification argument.  Implementations that need the
         classification argument can return None when classification is
         None, but doing so may incur a performance penalty.
+
+        If a class factory is provided, the serializer may use it
+        instead of the standard Python import mechanism to find a
+        class.  The class_factory will be called with a module and
+        class name.
         """