Hi Florent!

Florent Guillaume wrote:
I have to modify CMFSetup's type information import/export  (typeinfo.py).

Currently, to discriminate on ti types on export, it does:

        if isinstance( ti, FactoryTypeInformation ):
        elif isinstance( ti, ScriptableTypeInformation ):

Because I have other TypeInformation classes, with different properties, I'll have to use some kind of registry. Anyone has special needs here, before I commit an implementation? I think I'll do a registry that discriminates on ti.meta_type.

Note that my ti class is a subclass of FactoryTypeInformation, so the isinstance test above is not enough in any case.

In the long run we might need a registry for meta_type or interface specific import/export handlers.

But if you just need support for different PropertyManager properties, I'd propose an other solution:

utils.ConfiguratorBase has some methods for generic property support. The typeinfo handlers could use that code in a similar way as the site properties handlers or the handlers for the newstyle Actions on HEAD.

The property support works with any set of properties, so there would be no need to write new handlers for customized typeinfo classes.



Zope-CMF maillist  -  Zope-CMF@lists.zope.org

See http://collector.zope.org/CMF for bug reports and feature requests

Reply via email to