[Zope-CVS] CVS: Products/Ape/lib/apelib/zope2 - baseconf.py:1.1.2.1
   
    Shane Hathaway
     
    shane@zope.com
       
    Thu, 19 Jun 2003 23:24:02 -0400
    
    
  
Update of /cvs-repository/Products/Ape/lib/apelib/zope2
In directory cvs.zope.org:/tmp/cvs-serv1158
Added Files:
      Tag: ape-newconf-branch
	baseconf.py 
Log Message:
Skeleton for a new way to configure mappers
=== Added File Products/Ape/lib/apelib/zope2/baseconf.py ===
from apelib.core import gateways, mapper, serializers
from apelib.zodb3 import serializers as zodb3serializers
from apelib.zope2 import classifier, ofsserial, scripts, security
class AbstractConfiguration(mapper.MapperConfiguration):
    name = 'base'
    serializers = [
        ('id', ofsserial.IdAttribute()),
        ('modtime', zodb3serializers.ModTimeAttribute()),
        ('security', security.SecurityAttributes()),
        ]
    final_serializers = [
        ('remainder', zodb3serializers.RemainingState()),
        ]
class AbstractPropertyConfiguration(mapper.MapperConfiguration):
    base = 'base'
    name = 'base_p'
    serializers = [
        ('properties', ofsserial.OFSProperties()),
        ]
def getFolderItemsSerializer(stored_keychains):
    if stored_keychains:
        return ofsserial.FolderItemsByKeychain()
    else:
        return ofsserial.FolderItems()
class FolderConfiguration(mapper.MapperConfiguration):
    base = 'base_p'
    name = class_name = 'OFS.Folder.Folder'
    def __init__(self, stored_keychains):
        self.serializers = [
            ('items', getFolderItemsSerializer(stored_keychains)),
            ]
class FileConfiguration(mapper.MapperConfiguration):
    base = 'base_p'
    name = class_name = 'OFS.Image.File'
    serializers = [
        ('data', ofsserial.FilePData()),
        ]
    classifier_flags = ('content_type_attr',)