[ Peter Bengtsson wrote:] > Personally I think one should stay the hell away from transactions. > They're not for you to fiddle with. > I understand your question and even though I think it's a bit crazy I > can see a benefit (simplicity for the programmer). > > How about a trickery solution like this: > > class CatalogPathAware: > def index_object(self, *a, **k): > print self.__class__.__name__, "in for indexing!" > > class _MyProduct(CatalogPathAware): > def __init__(self, id, title=''): > self.id = id > self.title = title > def setTitle(self, title): > # could be much more complicated > self.title = title > > class MyProduct(_MyProduct): > def setTitle(self, title): > _MyProduct.setTitle(self, title) > self.index_object() > > inst = MyProduct("instanceA") > inst.setTitle('Peter') > > print inst.title > > > You would basically rename your existing class from "Whatever" to > "_Whatever" and continue as before. This does mean however that you > have to explicitly write a function for each setter. > hmm, i can't see how this would help. if i call index_object in every attribute getter method, the indexing is done possibly several times, unnecessary and (cpu)time consuming.
juergen _______________________________________________________________________ >> XLhost.de - eXperts in Linux hosting << Juergen Herrmann Weiherweg 10, 93051 Regensburg, Germany Fon: +49 (0)700 XLHOSTDE [0700 95467833] Fax: +49 (0)721 151 463027 ICQ: 27139974 - IRC: [EMAIL PROTECTED] WEB: http://www.XLhost.de _______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )