Extend copy/move protocol to object instantiation?
The copy/move protocol in 'CopySupport.py' is quite nice in that it allows the object which is being moved/copied to participate in the operation, including rejecting the operation or cleaning up at the conclusion of the operation. I found a need for something similar when objects are first installed in a folder(ish) location: 'scope out the neighborhood' and 'make yourself at home' hooks. ----------------------------------------------------- class anyClass: ... def addsubs(self): '''add sub category field names''' resobj=self.aq_parent.catlist1() res =[] for field in resobj._searchable_result_columns(): res.append(field) self.fields=res def makeyourselfathome(self): """parent specific installation hook""" self.addsubs() def addAnyClassObject(self,id,title,REQUEST=None): """Create an Object and install it in its parent Folder The argument 'self' will be bound to the parent Folder. """ ob=anyClass(id) self._setObject(id, ob) ob.__of__(self).makeyourselfathome() if REQUEST is not None: return self.manage_main(self,REQUEST) ------------------------------------------------------------- Would it make sense to add another 'op' type to CopySource._NotifyOfCopyTo() and CopySource._postCopy() to indicate a 'first home' operation? MAM
participants (1)
-
Mark Millikan